第十章抽象和封装

2018-05-29  本文已影响0人  Dream_wdl
抽出现实类分三步

1.找出它的种类
2.找出它的属性
3.找出它的行为

用面向对象来描述世界

1.发现类

class  Dog{
          // 根据"对象 "  抽象出 "类"
}

2.发现类的属性
狗类共有的特征
1.品种
2.年龄
3.名字
4.健康
5.亲密度

例:class Dog { 
    String name = "旺财";         // 昵称
    int health = 100;             // 健康值    
    int love = 0;                 // 亲密度
    String strain = "拉布拉多犬"; // 品种 
}

3.发现类的方法
狗的行为
1.跑
2.吠
3.输出信息

例:class Dog { 
    String name = "旺财";   // 昵称
    int health = 100; // 健康值    
    int love = 0;     // 亲密度
    String strain = "拉布拉多犬"; // 品种 
    /* 输出狗的信息 */
    public void print() {
        // 输出狗信息的代码
    } 
}
类图描述
image.png
对象初始化
例:Penguin pgn = new Penguin();
pgn.name = "qq";
pgn.sex = "Q仔"; 
构造方法

1.无返回值
2.跟类名一样的方法名
3.如果不写则默认空的构造方法(如果写了有参的只能调用有参的)
4.构造方法不是初始化对象


image.png
无参构造方法
例:public  penguin(){
      //可在方法中赋值
}
自定义构造方法
public Penguin () {
        name = "qq";
        love = 20;
        sex = "Q仔";
}
public Penguin (String name,int health,int love,String sex ) {
        this.name = name;
        this.health = health;
        this.love = love;
        this.sex = sex;
}

系统不再提供默认的无参构造方法
this 是指属性中定义的类 this.name=name

方法重载
image.png
static静态成员

特点及定义
-静态随着类的加载而加载,类的消失而消失,生命周期长
-静态是先存在,对象是后存在
-被所有实例对象所共享
-加上static的对象就属于类中的说有对象
-成员变量前加上static就共享;
-定义静态的对象就是共享一份 数据
-静态变量可用类型去调用
-定义static的方法 只能打出静态方法
-静态方法只能访问静态属性,不能访问实例属性
-静态方法不能放在方法里要放在类里


image.png

封装(保护)

概念

封装:将信息保存在类的内部,不允许直接访问,通过类提供的方法来实现对隐藏信息的操作和访问

好处

1.隐藏类的实现细节
2.只能通过规定的方法访问数据
3.方便加入控制语句
4.方便修改实现

步骤
image.png

Alt+Insert 快捷键

this

用类名定义一个变量(对象,实例)的时候,定义的只是一个引用,外面可以通过这个引用来访问这个类里面的属性和方法

this.name=name
public class ThisDemo {  
    String name;
    int age;
    public ThisDemo (){ 
        this.age=21;
   }     
    public ThisDemo(String name){
        this();
        this.name="Mick";
    }     
  private void print(){
         System.out.println("最终名字="+this.name);
         System.out.println("最终的年龄="+this.age);
    }
    public static void main(String[] args) {
       ThisDemo tt=new ThisDemo("zhangsan"); //随便传进去的参数
       tt.print();
    }
}
上一篇下一篇

猜你喜欢

热点阅读