1.掌握面向对象设计基本步骤
- 找出一组具有代表性的对象(Dog) 动物类:Dog
- 找出一组具有哪些公共的属性和行为 属性(昵称、品种、年龄) 行为(看门 叫 吃 跑 睡)
- 定义类
2.构造方法
定义:与类同名,没有返回值类型
什么调用:new 用来调用构造方法 (换句话实例化对象的时候调用构造方法)
构造方法允许重载!
构造方法重载有什么好处:创建对象的时候灵活性更好
构造方法的特点:
如果开发人员不提供构造方法,那么编译器会自动添加一个无参构造方法;
但是如果程序中已经提供了构造方法,那么编译器编译过程中就不会再提供构造方法了。
this:指代当前对象。用来区分成员变量和局部变量的同名情况。This.成员变量
案例:动物cat 属性(年龄、品种、昵称、毛色) 行为(抓老鼠,叫)
要求:先分析,出类图。最后编码(使用带参数的构造方法来给属性赋值)
3.封装的概述
封装:private私有化成员属性,提供公开public的getter/setter
Getter:取值
Setter:赋值
在哪儿用:在构造方法中初始化属性值的用!!!!!或者对象名.set/get()进行使用!!!
好处:隐藏内部实现细节,保证代码的安全,同时也可以提升数据的安全性
访问修饰符,从访问的范围由小及大依次是:private default protected public
访问修饰符的作用:可以修饰类、接口、属性和方法。通常可以通过访问修饰符来改变所修饰对象的可访问范围。
4.Static关键字的应用
作用:实现一个类的所有对象共享数据
可以修饰代码块、方法、变量、常量
静态代码块:类加载时执行,只会执行一次
静态方法的调用:同一个类中,静态方法只能调用静态方法和静态变量,不同类中,使用类名.方法名()
静态变量的调用:同一个中,静态方法直接使用静态变量,不同类中,类名.静态变量名
静态变量和实例变量的区别:
静态变量属于类,被当前类的所有对象共享。
实例变量属于对象,不存在共享
静态方法和实例方法的区别:
静态方法属于类,被当前类的所有对象共享。
实例方法属于对象,不存在共享