夜光序言:
聪明在于勤奋,天才在于积累~~
正文:
我们需要冷静思考~~
package com.Genius.seventh;
/*夜光:我们需要对抽象类有一定了解*/
public class SubClass extends AbstractClass{
public void speak(){
System.out.println("夜光请吃面~~");
}
public static void main(String[] args) {
SubClass sc = new SubClass();
sc.speak();
sc.eat();
}
}
abstract class AbstractClass{
public void eat(){
System.out.println("夜光~~走,去吃面~~");
}
public abstract void speak();
}
package com.Genius.seventh;
/*夜光:我们这里探讨一下final关键词~~
* 在一个变量之前用final进行修饰,就会变成常量
* 该常量只可以被赋值一次
*
*
* */
public class Constant {
public static void main(String[] args) {
ConstantTest sc = new ConstantTest();
System.out.println("a的值是:"+sc.print());
}
}
class ConstantTest{
int print(){
final int a = 10;
return a;
}
}
package com.Genius.seventh;
public class StaticConstant {
public static void main(String[] args) {
// 夜光:我们写一个测试final常量的程序~~
StaticContantTest sc = new StaticContantTest();
System.out.println(sc.eat());
}
}
class StaticContantTest{
static final String str = "夜光去吃面条~~";
static String eat(){
return str;
}
}
夜光:如果一个方法被final修饰,那就不会被重写了,安全性很高,在实际开发中
但是缺点还是有的,因为一旦使用了final修饰方法,那么就会失去一些面向对象的优点
package com.Genius.seventh;
/*夜光:我们再写一个测试final方法的程序~~*/
public class FinalMethod {
public static void main(String[] args) {
FinalTest sc = new FinalTest();
sc.a = 1111;
sc.print();
}
}
class FinalTest{
int a;
final void print(){
System.out.println("a的值是:"+a);
}
}