目录
类的基本语法
(1).构造器
注意:1、类默认就自带了一个无参构造器
2、如果为类定义了有参数构造器,类默认的无参数构造器就没有了,此时如果还想用无参数构造器,就必须自己手写一个无参数构造器出来

(2).this
1、this关键字是什么?
this就是一个变量,可以用在方法中,来拿到当前对象(哪个对象调用这个方法,this就拿到哪个对象)
this有啥应用场景? ------this主要用来解决:变量名称冲突问题的
用来解决对象的成员变量和方法内部变量的名称一样时,导致访问冲突问题的
public class Student{
//成员变量
String name;
double score;
//内部变量
public void checkPass(double score){
if(this.score >= score){
sout("恭喜你,考上哈佛");
}else{
sout("不好意思,你没考上~");
}
}
}
(3).封装
什么是封装?------------面向对象的三大特征:封装、继承、多态
封装的设计要求(规范)? -------合理隐藏、合理暴露
public class Student {
private String name;
//1、如何隐藏:使用private关键字(私有,隐藏)修饰成员变量,就只能在本类中被直接访问
//其他任何地方不能直接访问
private int age;
private double chinese;
private double math;
//2、如何暴露(合理暴露):使用public修饰(公开)的get和set方法,合理暴露
//成员变量的取值和赋值
//取值
public int getAge() { //获取年龄
return age;
}
//赋值
public void setAge(int age) { //设置年龄
this.age = age;
}
}

(4).javabean 实体类

什么是实体类?有什么特点?
1、成员变量必须私有,且要为他们提供get、set方法;必须有无参数构造器
(在实体类中:可以自动生成getter和setter方法、也可以自动生成有参构造器和无参构造器)
2、仅仅只是一个用来保存数据的java类,可以用它创建对象,保存某个事物的数据
实体类有啥应用场景?
实体类对应的是软件开发里现在比较流行的开发方式,数据和数据的业务处理相分离


(5).static 静态
1、static是什么?
叫静态,可以修饰成员变量、成员方法
成员变量:就是类里面的变量 成员方法:就是方法里面的变量
2、static修饰的成员变量叫什么?怎么使用?有啥特点?
类变量 (静态成员变量)
访问: 类名.静态变量(推荐) 对象.静态变量(不推荐)
属于类,与类一起加载一次,在内存中只有一份,会被类的所有对象共享
3、无static修饰的成员变量叫什么? 怎么使用?有啥特点
实例变量(对象变量)
访问: 对象.实例变量
属于对象,每个对象中都有一份


如果拿类名有访问实列变量,会报错

static--静态变量的应用场景
1、成员变量有几种?各自在什么情况下定义?
静态变量:数据只需要一份,且需要被共享时(访问,修改)
实例变量:每个对象都要有一份,数据各不同(如:name、score、age)
2、访问自己类中的变量,是否可以省略类名不写?
可以的
注意:在某个类中访问其他类里的类变量,必须要带类名访问

public class User {
public static int count = 0;
public User(){
//注意:同一个类中访问静态成员可以省略类名不写
//User.count++;
count++;
}
}
static修饰方法
注意规范:
如果这个方法只是为了做一个功能且不需要直接访问对象的数据,这个方法直接定义成-----静态方法
静态方法------是不能访问对象的数据
——————————————————————————
如果这个方法是对象的行为,需要访问对象的数据,这个方法必须定义成-----实例方法


静态方法的应用场景
静态方法有啥引用场景?
可以用来设计工具类
工具类是什么?有什么好处?
工具类中的方法都是静态方法,每个类方法都是用来完成一个功能的。
提高了代码的复用性;-----调用方便,提高了开发效率。
为什么工具类要用静态方法,而不是用实例方法?
实例方法需要创建对象来调用,会浪费内存。
工具类定义时有什么要求?
工具类不需要创建对象,建议将工具类的构造器私有化。



static的注意事项
静态方法,实例方法访问相关的几点注意事项
1、静态方法中可以直接访问静态成员,不可以直接访问实例成员-----(可以间接访问实例成员---不推荐)。
2、实例方法中既可以直接访问静态成员,也可以直接访问实例成员。
3、实例方法中可以出现this关键字,静态方法中不可以出现this关键字的。

被折叠的 条评论
为什么被折叠?



