什么是包?
package com.it.javabean;
public class student{ }
导包
import包名.类名;什么是权限修饰符?
权限修饰符的分类和具体作用范围:

final的作用
final修饰变量的注意
T.setname();改变。常量
ublic static final修饰的成员变量,必须有初始化值,而且执行的过程中其值不能被改变。常量的执行原理
优雅
enum枚举的概述


枚举的特征:
java.lang.Enumpublic 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 {
@Override
public 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{
@Override
public String writemain() {
return "StudentChild" ;
}
}
StudentMiddle.java
package com.ith.d7_abstract_template;
public class StudentMiddle extends Student{
@Override
public 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、接口注意事项