(一)面向对象

1 面向对象的特点:

a 面向对象的思想更符合我们生活中的思想行为习惯

b 让一个复杂的事情简单化

c 角色发生变化:让我们从执行者变成了指挥者

2 面向对象的特征:封装、继承、多态

(二)封装

代码(以一个标准类的代码为例):

JavaSe学习总结_封装篇

JavaSe学习总结_封装篇

运行结果:

JavaSe学习总结_封装篇

1 局部变量和成员变量的区别?

1.1 在类中位置不同

局部变量:在方法定义中或方法声明上

成员变量:在类中,方法外

1.2 在内存中的位置不同

局部变量:在栈内存

成员变量:在堆内存

1.3 生命周期不同

局部变量:随着方法调用而存在,随着方法调用结束而消失

成员变量:随着类的加载而加载,随着类的加载结束而消失(等待GC空闲状态)

1.4 初始化不同

局部变量:必须在使用之前进行初始化

成员变量:可以不用初始化

2 私有化

2.1 格式:

成员变量私有化:private 数据类型 变量名   eg:private String name;

成员方法私有化:private 返回值类型 方法名   eg:private void demo(){}

2.2 private关键字:被private修饰的成员变量/成员方法,只能在本类中访问,外界不能够直接访问,所以要提供公共的访问方法getXXX()/setXXX()来给成员变量赋值

2.3 this关键字:代表当前类对象,可以防止局部变量隐藏了成员变量(局部变量名字和成员变量名字相同)

2.4 创建类对象:格式:类名 对象名 = new 类名();

2.5 形式参数的问题:

a 形式参数是基本数据类型:形式参数的改变,对实际参数没有影响

b 形式参数是引用数据类型:形式参的改变:会直接影响实际参数

则:如果一个方法的形式参数是一个引用数据类型,就需要创建该引用类型的具体对象

2.6  匿名对象:没有名字对象

2.6.1 格式:new 类名() ;

2.6.2 匿名对象的好处:

a 调用一次即可,不适合调用多次

b 调用完之后,会立即从内存释放掉,及时被GC垃圾回收器回收掉

c 可以作为参数进行传递

相关文章: