ASCII----char类型的变量在java内存中存储的是ASCII类型
大写A----65 小写a-----97 0---48
数据类型转换:
基本数据类型:数值型(byte short int long float double) 字符型(char) 布尔型(boolean)
Boolean 类型的变量内存存储的就是具体的true 或false
- 两种数据类型必须是同一类型
- 小到大自动 大到小强制
引用数据类型:类 数组 接口 枚举
引用数据类型之间的转换
- 自动类型转换:父类引用指向子类对象 子类变父类
Animal a = new dog();
A g = new B();
//A是父类 B是子类
2.强制类型转换:子类引用指向父类对象 父类变子类
Dog d = (dog)new animal();
B c = (B) new A();
//B是子类 A是父类
编译通过 语法无错 执行时报异常------ClassCastException 类造型异常
一个文件里 文件名必须与带有public修饰的类名相同
类与类之间的三种关系
Has 成员属性 将类B的对象作为类A的成员属性 B的创建对象写在A类里
Use 参数传递 在一个类的 其中某一个函数中 使用另外一个类的对象来传参
Is 继承
传参
函数定义 形参列表
函数调用 实参列表
形参约束实参
烦死了烦死了烦死了不想听课不想听课不想听课
基本数据类型传参
- 实参的个数必须与形参相同
- 实参的类型必须与形参定义时一一对应相同
- 实参形参不共用一段内存 各有自己的内存 实参的单向传递
引用数据类型传参(use)
final 修饰类 :最终类 不能被继承
String类是final修饰,是最终类 不能被继承
final 修饰方法: 最终方法 不能子类进行重写
final 修饰属性: 最终属性 只能赋一次初值 其值不可以改变
- 在定义时赋初值----常用
- 在构造器中赋初值----常用
- 非静态final属性在非静态代码块里赋值 静态final属性在静态代码块里赋值----不常用 容易笔试
final 修饰局部变量:形参-------- 只能在方法调用的时候通过实参赋初值 且只能赋一次初值
局部变量---只需要在使用的时候赋初值即可
也可在定义时给初值
接口中所有成员属性都是常量 默认用 public static final修饰
public interface ChongDianXieYi {//一个类连接多个接口 多态
int DIANYA = 220;//所有成员属性都是常量 默认用 public static final修饰
//方法重写 多态
void chongDian();//默认用public abstract修饰
//默认函数 默认用public修饰
default void i() {
System.out.println("实现充电协议了");
}
}
return
boolean saveMoney() {
boolean flag = false;
System.out.println("请输入存款金额");
int money;
Scanner sc = new Scanner(System.in);
money = sc.nextInt();
if (money>0) {
this.money = this.money + money;
System.out.println("存款成功");
flag = true;
} else {
System.out.println("您输入的金额有误");
flag = false;
}
System.out.println("请取卡");
return flag;
}