0806
静态初始化二维数组
数据类型 [][] 数据的名称 = {{30,40,60},{40,69,70}};
面向对象
面向过程开发:实现某个功能,注重的是步骤,每一步都需要亲力亲为。例如:自己手洗衣服(脱衣服、拿桶、加洗衣液、…)
面向对象开发:实现某个功能,不注重过程过程与步骤,只需要结果,是找个有帮助的人去做。(买一台洗衣机,只要把衣服放进洗衣机【洗衣机即为对象】)
面向对象的好处:把复杂的问题简单化;由执行者变成指挥者;便于代码的扩展与维护。
三大特征:封装、继承、多态
面向对象和面向过程开发都不可以少,二者相辅相成
类与对象
类:抽象的,用于描述一种事物
成员属性:年龄、性别、姓名(名词)
成员方法:吃饭、打电话、发短信(动词)
对象:具体的表现形式
类与对象的关系:类是对象的抽象;对象是类的具体
定义一个类
public class Student {
//成员属性:数据类型+变量。
String name;
int age;
//成员方法
public void eat(){
System.out.println("正在吃猪脚饭!");
}
public void study(){
System.out.println("学习java,从入门到劝退!");
}
}
注意点:
成员属性都写在类里,不可写在方法里
成员方法要把关键字 static 去掉
以引用数据类型作为返回值或者参数,传递的都是内存地址
匿名对象
一次性的对象,没有名字的对象;如:new Student()
特点
栈内存里没有其地址,但是会在堆内存里开辟空间
该对象使用完即刻销毁,节省内存空间
使用情况
一般作为方法的参数使用,如:
getStudent (new Student());
也可以直接调用其类里的方法,如:
new Student().study();
匿名对象给成员变量赋值没有任何意义
局部变量和成员变量的区别
定义
局部变量:方法里的变量,也包含方法里的参数
成员变量:类下面的变量
位置
局部变量:放在方法里
成员变量:放在类下面
生命周期
局部变量:随着方法的开始而开始,随着方法的结束而结束
成员变量:随着对象的创建而开始,随着对象的回收而结束(垃圾回收器)
存储位置
局部变量:存在栈里
成员变量:存在堆里
默认值
局部变量:无默认值
成员变量:有默认值
属性私有化
私有的关键字:private。加上关键字后,只能本类访问
私有化的好处:隐藏内部细节,保护数据安全,防止数据错误。
提供两个对外的方法:
setXXX()赋值
public void setName(String mingzi ){
name=mingzi;
}
getXXX() 取值
public String getName(){
return name;
}
可以对属性、方法、类、接口私有化
私有化是一种简单的封装。
this 的使用
本类的对象引用,即谁调用了这个方法,这个对象就是谁
this.变量
获取的都是成员变量,若用 this 调用方法,这个方法肯定是成员方法
在一个方法里面,局部变量的作用域优先于成员变量
封装
优点
隐藏内部代码实现的细节
可实现代码的重用性
提高代码的可维护性
属性的封装:私有化属性;给相应的 get set方法
快捷键
get、set方法快捷键:Alt+Inse