批判性思维的本质在于学会提问,且学会提问是更有效的学习方法,养成提问的习惯,时刻保持好奇心,以理性的心态分析世界。
对象的创建【资料获取】
问:如何开始第一个程序?
//访问修饰符 + class + 类名 = 类
public class HelloWorld {
//访问修饰符 + 变量类型 + 变量名 = 变量
private String name;
//访问修饰符 + static + 变量类型 + 变量名 = 静态变量
public static String value = "1";
//访问修饰符 + static final + 变量类型 + 变量名 = 静态常量
public static final int NUM = 18;
//访问修饰符 + final + 变量类型 + 变量名 = 常量
public final int NUM = 18;
//访问修饰符 + 类名() = 无参构造
public HelloWorld() {
}
//访问修饰符 + 类名() + 参数 = 含参构造
public HelloWorld(String name) {
this.name = name;
}
//访问修饰符 + 返回参数类型 + 方法名 = 方法
public String getName() {
return name;
}
//方法
public void setName(String name) {
this.name = name;
}
//静态方法
public static String sayHello(){
System.out.println("Hello");
}
static{
name = "静态代码构造块"
}
{
System.out.println("代码构造块");
}
//静态方法
public static void main(String[] args) {
//创建对象
HelloWorld helloWorld = new HelloWorld();
helloWorld.setName("HelloWorld");
System.out.println(helloWorld.getName());
System.out.println(HelloWorld.NUM);
System.out.println(HelloWorld.value);
}
}
- 使用class声明了一个HelloWorld类
- 定义了name,value变量,NUM常量
- 定义了无参构造,含参构造
- 定义了针对name变量的取值,设值得方法.
- 定义了main方法作为程序执行入口
问: 频繁出现的访问修饰符用处是什么?
访问修饰符主要是用来控制访问权限,隐藏内部实现细节,避免因为直接访问或修改造成程序崩溃的问题.
问: static关键字有什么用处?
-
static修饰的成员变量和成员方法独立于该类的任何对象,被类的所有实例共享。
-
只要这个类被加载,Java虚拟机就能根据类名在运行时数据区的方法区内定找到他们,无需创建对象
问: fianl关键字有什么用处?
-
被final修饰的类不可以被继承
-
被final修饰的方法不可以被重写
-
被final修饰的变量不可以被改变,实际上是指引用不可变,引用指向的内容是可以改变的.
问: 类中的构造函数与构造代码块有啥区别?【资料获取】
- 构造函数
1.对象一建立,就会调用与之相应的构造函数,也就是说,不建立对象,构造函数时不会运行的。
2.构造函数的作用是用于给对象进行初始化。
3.一个对象建立,构造函数只运行一次,而一般方法可以被该对象调用多次。
- 构造代码块
1.构造代码块的作用是给对象进行初始化。
2.对象一建立就运行构造代码块了,而且优先于构造函数执行。这里要强调一下,有对象建立,才会运行构造代码块, 类不能调用构造代码块的,而且构造代码块与构造函数的执行顺序是前者先于后者执行。
3.构造代码块与构造函数的区别是:构造代码块是给所有对象进行统一初始化,而构造函数是给对应的 对象初始化, 因为构造函数是可以多个的,运行哪个构造函数就会建立什么样的对象,但无论建立哪个对象,都会先执行相同的构
造代码块。也就是说,构造代码块中定义的是不同对象共性的初始化内容。
静态代码块
1.它是随着类的加载而执行,只执行一次,并优先于主函数。具体说,静态代码块是由类调用的。类调用时,先执行静 态代码块,然后才执行主函数的。
2.静态代码块其实就是给类初始化的,而构造代码块是给对象初始化的。
3.静态代码块中的变量是局部变量,与普通函数中的局部变量性质没有区别。
4.一个类中可以有多个静态代码块
执行顺序
1.执行父类的静态代码块,并初始化父类静态成员变量
2.执行子类的静态代码块,并初始化子类静态成员变量
3.执行父类的构造代码块,执行父类的构造函数,并初始化父类普通成员变量
4.执行子类的构造代码块, 执行子类的构造函数,并初始化子类普通成员变量
小编整理了一份大厂真题的面试资料,以及2021最新Java核心技术整理的资料集锦,需要领取的小伙伴可以 私聊关注我 免费领取 ,编程的世界永远向所有热爱编程的人开放,这是一个自由,平等,共享的世界,我始终是这样坚信的。
喜欢小编的分享可以点赞关注哦,小编持续为你分享最新文章 和 福利领取哦