Loading...

文章背景图

Day 05-知识点汇总

2026-02-02
4
-
- 分钟

1.什么是封装?

(1)将类的某些信息(属性)隐藏在类的内部,不允许外部直接访问,而是通过该类提供的方法来访问。

(2)封装是面向对象的三大特征之一,面向对象的三大特征是封装、继承、多态。

2.private和public的异同点?(合理隐藏,合理暴露)

相同点:public和private关键字都可以可以修饰成员变量和成员方法

不同点:被public修饰的内容可以在任意位置被访问,被private修饰的内容只能在本类中被访问。

3.封装开发步骤?

步骤1:属性成员设置私有修饰符

步骤2:提供公开(public)的方法进行赋值与取值

public class Student {
    //封装开发步骤1:属性成员设置私有修饰符
    private String name;
    private int age;

    //封装开发步骤2:提供公开的方法进行赋值与取值
    //提供公开设置值方法
    public void setName(String a){
        name = a;
    }
    //提供公开取值方法
    public String getName(){
        return name;
    }

    //提供公开设置值方法
    public void setAge(int a){
        if(a<0){
            System.out.printf("赋值的年龄[%d]不合法\n",a);
        }else {
            age = a;
        }
    }
    //提供公开取值方法
    public int getAge(){
        return age;
    }
}

4.this.name的意思?

在和形参重名的情况下,this.name就是当前调用方法的对象的 name 成员变量,用来明确告诉编译器:我要给对象自己的属性赋值,不是给方法的临时参数赋值。

5.this关键字有什么作用?

主要用来解决成员变量和局部变量名称冲突问题,this.变量名 表示访问成员变量。

1-12.png

6.this关键字表示谁?

为了做到见名知意选择将局部变量也使用跟原成员变量一样的变量名,而因此造成局部变量名与成员变量名冲突,而为了区分它们,将成员变量加上this.前缀,this指的是调用这个方法的所属对象

7.构造器有什么特点?

(1)创建对象时,对象会去调用构造器。(new 对象就是在执行构造器new Student()就是在执行构造器,当构造器执行完了,也就意味着对象创建成功。)

(2)构造器名字和类名一样。

(3)构造器没有返回值类型,连void都没有。

8.构造器有什么作用?

创建对象同时给对象中的属性进行初始化(赋值)。

9.如果一个类不写构造器,该类就没有构造器吗?

如果不写构造器,Java会为类自动生成一个无参构造器

一旦定义了有参数构造器,Java就不会帮我们的类生成无参构造器了,此时就建议自己手写一个无参数构造。

10.怎么理解new和构造方法的关系?

new 是创建对象的根本,new + 类名(参数) 的本质就是通过 new 调用对应构造方法,完成「造对象 + 初始化」的完整过程

11.什么是javabean?有啥特点?( 快捷键:alt+insert 或者 alt+fn+insert )

(1)一个特殊的java类,成员变量必须私有,且要为他们提供公有的get、set方法。

(2)必须有无参数构造器,也可以有有参(推荐有一个全参)构造器。

(3)重写Object对象的toString方法,输出每个属性值,这样方便打印输出数据。

12.重写toString方法的作用?原理?

重新Object对象的toString方法,打印就不是内存地址而是所有属性的值

13.实体类有啥应用场景?

实体类只负责封装数据。

14.JavaBean中的toString方法有什么作用?

在打印对象名时不输出地址值,而是对象的属性值。

15.static是什么?

叫静态,可以修饰成员变量、成员方法、代码块。

16.static修饰的成员变量叫什么? 怎么使用?有啥特点 ?

(1)类变量(静态成员变量)

(2)类名.静态变量

(3)属于类,与类一起加载一次,在内存中只有一份,会被类的所有对象共享。

17.无static修饰的成员变量叫什么? 怎么使用?有啥特点 ?

(1)实例变量(非静态变量,对象的变量)

(2)对象.实例变量(通常被private修饰了,需要通过getter/setter方法访问)

(3)属于对象,每个对象中都有一份。

18.静态方法,实例方法访问相关的几点注意事项?

(1)静态方法中只能访问静态的成员变量和成员方法。

(2)实例方法中既可以访问静态成员,也可以访问非静态成员。

(3)实例方法中可以出现this关键字,静态方法中不可以出现this关键字的。

19.static修饰的成员方法叫什么? 如何使用?

(1)静态方法(类方法)

(2)类名.静态方法(…)

20.无static修饰的成员方法叫什么? 如何使用?

(1)实例方法(也叫做非静态方法,对象的方法)

(2)对象.实例方法(…)

21.静态方法有啥应用场景?

可以用来设计工具类。

22.工具类是什么,有什么好处?

提高了代码的复用性;调用方便,提高了开发效率

23.为什么工具类要用静态方法,而不是用实例方法?

实例方法需要创建对象来调用,会浪费内存,而工具类可以直接使用类调用。

24.什么样的方法适合定义成静态方法,什么样的方法适合定义成实例方法?

(1)如果类中的方法只是为了完成一个个功能,不需要操作类中的成员变量,那么方法就可以定义成静态方法。

(2)如果类中的方法内部操作了成员变量,那么就需要定义成实例方法

25.工具类构造器特点?

工具类没有创建对象的需求,建议将工具类的构造器进行私有。防止外部实例对象,节省内存

26.什么是构造器?

一种特殊的方法,但是这个方法没有返回值类型,方法名必须和类名相同

27.什么是代码块?

在类中方法外,使用 { } 括起来的代码被称为代码块

28.什么是静态代码块?

格式:static{}

特点:需要通过static关键字修饰,随着类的加载而加载,只执行一次。

使用场景:在类加载的时候做一些静态数据初始化的操作,以便后续使用

29.构造代码块什么时候执行,执行几次?

每次创建对象,调用构造器之前执行。执行多次。

30.静态代码块什么时候执行,执行几次?

随着类的加载而加载,只执行一次。

评论交流

文章目录