java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > Java类的定义,静态变量,成员变量,构造函数,封装

Java面向对象程序设计:类的定义,静态变量,成员变量,构造函数,封装与私有,this概念与用法详解

作者:随风行云

这篇文章主要介绍了Java面向对象类的定义,静态变量,成员变量,构造函数,封装与私有,this概念与用法,较为详细的分析了Java类的定义,静态变量,成员变量,构造函数,封装,私有等相关原理、用法及操作注意事项,需要的朋友可以参考下

本文实例讲述了Java面向对象程序设计:类的定义,静态变量,成员变量,构造函数,封装与私有,this概念与用法。分享给大家供大家参考,具体如下:

本文内容:

注:函数和方法是一样东西。【由于我之前学习的时候有些书籍不是同样的说法,书看多了,我就习惯了不同情况下用不同的说法】

首发时间:2018-03-22


什么是面对对象:


类的定义与对象实例化:

类的定义:

对象实例化

class Dog{
  String name;
  int foot=4;
  Dog(){//这是一个构造函数
    this.name="旺财";
  }
  void hello() {
    System.out.println("hello,this is a dog");
  }
  static void static_hello() {
    System.out.println("hello,this is a dog too");
  }

}

public class Demo {

  public static void main(String args[]) {
    
    Dog d=new Dog();
    System.out.println(d.foot);//4
    d.hello();//hello,this is a dog
    d.static_hello();//hello,this is a dog too
    Dog.static_hello();//hello,this is a dog too
    
  }
}


成员变量:

成员变量的有效范围

成员变量的赋值:


静态变量、方法与实例变量、方法:

根据变量、方法是否有static修饰可以分为实例变量,实例方法和静态变量(类变量),静态方法(类方法)

 

实例变量\方法跟静态变量\方法的区别好比:“泰迪狗类”比如有一个共有属性“狗种类名”,那么这个属性应该是所有泰迪狗都有的,并且是泰迪狗共享的,如果某一天人类想改泰迪狗的种类名称,那么应该是所有泰迪狗都改的(静态的);而每一只泰迪狗都有自己的主人,这是由每一只狗自身决定的,所以这是特有属性,即使这只狗换了主人,也不会影响别的狗。(实例的)


构造函数:

class Dog{
  String name;
  Dog(){
    this.name="旺财";
  }
  Dog(String name){
    this.name=name;
  }
}
public class Init_usage {

  public static void main(String args[]) {
    
    Dog d3=new Dog();
    Dog d4=new Dog("小菜");
    System.out.println(d3.name);
    System.out.println(d4.name);
  }
}

补充:


封装与私有:

class Man{
  private int money;
  String name;
  Man(String name,int money){
    this.name=name;
    this.money=money;
  }
  int getmoney(){
    return money;
  }
  void setMoney(int money){
    this.money=money;
  }
  
}

public class Private_usage {

  public static void main(String[] args) {
    Man m=new Man("lilei",2000);
    System.out.println(m.name);//lilei
//    System.out.println(m.money);//报错的,因为私有了,不能访问
//    System.out.println(m.wife);//报错的,因为私有了,不能访问
    System.out.println(m.getmoney()); //2000
    m.setMoney(6000);
    System.out.println(m.getmoney());//6000

  }

}


this关键字:

class Person{
  String name;
  int age;
  Person(String name,int age){
    this.name=name;
    this.age=age;
  }
  void hello() {
    this.sysprint();
//    sysprint();
  }
  void sysprint() {
    System.out.println("hello world!");
  }
}

public class This_usage {
  public static void main(String args[]) {
    Person p1=new Person("lilei",18);
    p1.hello();//hello world!
    
  }

}

更多关于java相关内容感兴趣的读者可查看本站专题:《Java面向对象程序设计入门与进阶教程》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总

希望本文所述对大家java程序设计有所帮助。

您可能感兴趣的文章:
阅读全文