什么是包?
package com.it.javabean;
public class student{ }
导包
import包名.类名;
什么是权限修饰符?
权限修饰符的分类和具体作用范围:
final的作用
final修饰变量的注意
T.setname();
改变。常量
ublic static final
修饰的成员变量,必须有初始化值,而且执行的过程中其值不能被改变。常量的执行原理
优雅
enum枚举的概述
枚举的特征:
java.lang.Enum
public enum Orientation{UP,DOWN,LEFT,RIGHT;
}
switch 与 枚举自动结合使用
1、抽象类、抽象方法是什么样的?
2、抽象类基本作用是啥?
3、继承抽象类有哪些要注意?
案例
系统需求
代码只写了金卡:
Card.java
package com.ith.d6_abstract_test;public abstract class Card {private String userName;private double money;/*** 支付方法* 抽象方法*/public abstract void pay(double money2);public String getUserName() {return userName;}public void setUserName(String userName) {this.userName = userName;}public double getMoney() {return money;}public void setMoney(double money) {this.money = money;}}
GoldCard.java
package com.ith.d6_abstract_test;public class GoldCard extends Card {@Overridepublic void pay(double money2) {System.out.println("您当前消费:" + money2);System.out.println("您卡片当前余额是:"+getMoney());double rs = money2*0.8;System.out.println("您实际支付:" + rs);setMoney(getMoney()-rs);}
}
Test.java
package com.ith.d6_abstract_test;public class Test {public static void main(String[] args) {GoldCard c = new GoldCard();c.setMoney(10000);c.setUserName("lll");c.pay(9000);System.out.println("剩余:" + c.getMoney());}
}
输出
您当前消费:9000.0
您卡片当前余额是:10000.0
您实际支付:7200.0
剩余:2800.0
特征和注意事项
类有的成员(成员变量、方法、构造器)抽象类都具备
抽象类中不一定有抽象方法,有抽象方法的类一定是抽象类
一个类继承了抽象类必须重写完抽象类的全部抽象方法,否则这个类也必须定义成抽象类。
不能用abstract修饰变量、代码块、构造器。
最重要的特征:得到了抽象方法,失去了创建对象的能力(有得有失)
模板方法:
中学生与小学时都写一篇模板作文
Student.java
package com.ith.d7_abstract_template;public abstract class Student {/*** 模板方法*/public void write(){System.out.println("开头");System.out.println("正文:");//模板System.out.println(writemain());System.out.println("结尾~~");}public abstract String writemain();
}
StudentChild.java
package com.ith.d7_abstract_template;public class StudentChild extends Student{@Overridepublic String writemain() {return "StudentChild" ;}
}
StudentMiddle.java
package com.ith.d7_abstract_template;public class StudentMiddle extends Student{@Overridepublic String writemain() {return "StudentMiddle" ;}
}
Test.java
package com.ith.d7_abstract_template;public class Test {public static void main(String[] args) {StudentMiddle s = new StudentMiddle();s.write();System.out.println("-----------");StudentChild s2 = new StudentChild();s2.write();}
}
输出
开头
正文:
StudentMiddle
结尾~~
-----------
开头
正文:
StudentChild
结尾~~
接口的用法:
修饰符class 实现类implements接口1,接口2,接口3,... {}
实现的关键字:implements
接口实现的注意事项:
接口可以多继承
代码 gitee->zijin-jdd -> java_-strengthen_project ->d10_interface_extends
1、JDK8开始后新增了那些方法?
2、接口注意事项