1,成员变量可以先不赋值,系统会安排。若想赋值在类的主方法中调用也可以。若未赋值,则系统安排String类为null,int类为0.
2,该成员方法中给定了形参,则可以在最后调用该成员方法时在括号内直接写"人名"即可
3,调用成员变量(对象.成员变量)
4,给调用的成员变量赋值
5,对象:
属性 事物的信息描述
行为 事物的功能
类:(学习的编程语言Java中最基本的单位是:类。)
成员变量 事物的属性
成员方法 事物的行为
6,面向对象:(面向过程:强调的是每一个功能的步骤。面向对象:强调的是对象,***然后由对象去调用功能)
面向对象开发:就是不断的创建对象,使用对象,指挥对象做事情。
面向对象设计: 其实就是在管理和维护对象之间的关系。
面向对象特征:
封装(encapsulation)
继承(inheritance)
多态(polymorphism)
7,成员变量和局部变量的区别:位置不同,存放位置不同(成员变量存放在堆中,而局部变量存放在栈),周期不同,初始化值不同(成员变量有默认初始化值,而局部变量必须要定义,赋值,才能使用)。局部变量名称可以和成员变量名称一样,在方法中使用的时候,采用的是就近原则。
8,在一个成员方法中定义了一个局部变量,若该局部变量和成员变量名字一样,则在该成员方法{}内用局部变量的值。但一旦离开该成员方法,则依照按着成员变量的值使用。因为在没有调用该成员方法的时局部变量的生命周期结束,无法使用。
9,封装:是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。
10:class Phone{
private String brand; //定义私有类成员变量
private int price;
private String color;
//getXxx()和setXxx()方法
public String getBrand(){
return brand;} //其实隐含了this
public void setBrand(String brand){
this.brand = brand; //this.brand就是成员变量定义的那一个。这一句等同于把brand值赋给成员变量brand,下面等同
}
public int getPrice(){
return price;
}
public void setPrice(int price){
this.price = price;
}
public String getColor(){
return color;
}
public void setColor(String color){
this.color = color;
}
public static void main(String[] args) {
Phone p =new Phone();
System.out.println(p.getBrand()+"...."+p.getPrice()+"...."+p.getColor());
p.setBrand("huawei"); //调用成员方法
p.setPrice(3998);
p.setColor("huise");
System.out.println(p.getBrand()+"...."+p.getPrice()+"...."+p.getColor());
}
}
11,构造方法的注意事项:
A:如果我们没有给出构造方法,系统将自动提供一个无参构造方法。
B:如果我们给出了构造方法,系统将不再提供默认的无参构造方法。
注意:这个时候,如果我们还想使用无参构造方法,就必须自己给出。建议永远自己给出无参构造方法
12,***给成员变量赋值有两种方式:A:public 数据类型 setXxx(可有可无的参数) { this.xxx =xxx; } main{对象.setXxx(参数);} B:构造方法
public 类型(参数可有可没有) this.xxx = xxx;main(){类名.对象 = new 类名(有参数就写信息);}
13,注意每次在构造方法或成员方法的结束部分,别忘了show函数。
public void show(){
}
14,针对多个对象有共同的成员变量值的时候, Java则可以提供一个关键字来修饰:static。
用法:static 数据类型 标识符;