Java基础笔记
Java的构造函数
Java的构造函数声明方式为 (访问修饰符 类名(){ ...}),在对象被初始化的时候调用
代码如下:
public class MyClass {
int id;
public MyClass(int id){
this.id = id;
}
}
这里的构造函数在初始化的过程中,使用了this关键字,this关键字的作用是:在方法内区分局部变量和全局变量
Java构造函数和普通方法的区别
- 调用方式不同,一个使用new,另一个使用对象名.方法名进行调用
- 构造函数没有返回值
- 构造函数的方法名和类名相同
方法的参数自动类型转换
方法的参数类型声明为(double a, int a)可以在传参时调入(1,2)
public class TempTest{
public static void main(String[] args) {
//自动类型转换 int -> double
int a = 1;
int b = 2;
sum2(a,b);
}
public static void sum2(double a,int b){
System.out.println("sum2");
}
}
在方法的重载时,如果方法的形参类型和个数相同,顺序不同,也按隐式调用来操作的话,编译器会报异常!!!
public class TempTest{
public static void main(String[] args) {
//自动类型转换 int -> double
int a = 1;
int b = 2;
sum(a,b); //这里编译不通过,因为编译器不知道选择哪一个函数
}
public static void sum(int a,double b){
System.out.println("sum3");
}
public static void sum(double a,int b){
System.out.println("sum2");
}
}
一道面试题
方法的重载和重写的区别?
- 方法的重载发生在同一个类中,重载的特点是方法名相同,参数的个数不同,参数的类型不同,参数的排列顺序不同
- 方法的重写发生在有继承关系的子类和父类之间,可以概括为两同两小一大原则
- 两同:方法名和参数列表相同
- 两小:返回的异常类型和返回值类型小于父类的类型
- 一大:访问修饰符权限更大
面向对象
面向对象:是一种软件开发方法, 和面向过程相比,把关注点从具体的执行过程放在具体的事物上面,把数据和处理数据的方法抽象成对象,然后负责管理这些对象
优点:
- 代码模块化,容易多人协作和代码的故障定位
- 扩展性更高
四大特性: 抽象,封装,继承,多态
抽象
把具体的事物属性和相同的行为特征进行抽象,形成一个对象
就比如一个学生:抽象成 学号,姓名,校名等属性,和打篮球,踢足球,学习等方法
封装
把需要处理的数据和处理数据的方法放在一起
优点:
- 保证数据的安全性,对外访问只是提供访问接口,只能通过接口定义的规范对数据进行操作
public class MyClass {
//属性声明为 private 只有本类能够访问
private int id;
public MyClass(int id){
this.id = id;
}
public int getId() {
return id;
}
//操作数据的接口,暴露给其他类使用
public void setId(int id) {
this.id = id;
}
}

浙公网安备 33010602011771号