`
jianchen
  • 浏览: 334378 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

java基础复习(11)--final关键字和抽象类

阅读更多

final 关键字
final--用于类,方法,变量前
final--不可被继承,如java.lang.Math就是一个final类,不可被继承
final变量--在初始化后不可改变变量值,用于常量定义。如果final变量是引用变量,则不可以改

变它的引用对象,但可以改变对象的数据(属性)
final方法--不可被覆盖

abstract 可以使用abstract来修饰一个类或者方法
用abstract修饰的类表示这个类是一个抽象类,用abstract修饰的方法表示这个方法是一个抽象

方法
抽象类不能被实例化
抽象方法是只有方法声明,而没有方法的实现的方法
抽象类中不一定必须有抽象方法
一个普通类中不可以有抽象方法。
抽象类可以有构造方法。(相当于抽象类的构造器是私有的,只有子类可以调用)

充:
抽象类并非一定需要抽象方法,但是没有抽象方法,抽象类就没有存在的必要
在以下任一条件成立时,类必须定义成抽象类:
--类中至少有一个抽象方法
--类继承了父类中的抽象方法,但是至少有一个抽象方法没实现
--类实现了某个接口,但没有全部实现接口中的方法

安全,加密,破解不宜用面向对象来做

 

树的遍历(中序遍历)

printTree(TreeNode root){
if(root.left!=null)
printTree(root.left);
System.out.println(root.data):
if(root.right!=null)
printTree(root.right);
}


接口是方法和常量值得定义的集合。
接口是一种特殊的抽象类,这种抽象类中只包含常量和方法的定义。而没有变量和方法的实现


抽象类和接口:
抽象类表达类之间的关系,也表达了类的功能,一个类只能有一个父类
接口表达了类的功能,不体现类的继承关系,一个类可以实现多个接口
抽象类和接口都可以使用多态,提供代码的灵活性

C++多继承,当父类有同样签名的方法,但实现不一样,子类就不知道到底调用哪个方法。
java干脆直接限制只能单继承,它的“多继承”利用接口来实现。

分享到:
评论

相关推荐

    观看韩顺平学习整理java的笔记到异常

    帮助大家复习java基础知识其中有 hashCode 2 toString 2 finalize 2 用已学知识做出简单的房屋出租系统 3 类方法使用注意事项和细节讨论 4 main()方法 4 代码块 4 代码块使用注意事项和细节 5 单例模式 6 final...

    java进阶13天资料.zip

    day02-抽象类、接口、代码块,final、单例、枚举 day03-多态、包、权限修饰符、内部类,Object类,Date类 day04-常用API、正则表达式,泛型、Collection集合API day05-迭代器,数据结构,List,Set ,TreeSet集合,...

    JAVA基础课程讲义

    抽象类的使用要点 83 接口 83 为什么需要接口? 84 如何定义接口? 84 接口的本质探讨 84 接口使用要点 85 接口的多继承 86 面向接口编程 87 OOP更多应用 87 组合 87 内部类(innerclasses) 88 字符串(java.lang....

    AIC的Java课程1-6章

     理解和使用关键字final。  理解包的概念。学会创建包,包中定义类,包外使用类。  掌握package(又称默认,友元)控制符,系统掌握4种访问控制符 第6章 面向对象(多态) 4课时  理解...

    JAVA复习资料

    25、 抽象或abstract 方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。 最终后final 方法是不能被当前类的子类重新定义的方法。 26、多态是指 一种定义,多种实现 ,在Java中有...

    JAVA_Thinking in Java(中文版 由yyc,spirit整理).chm

    7.4 抽象类和方法 7.5 接口 7.5.1 Java的“多重继承” 7.5.2 通过继承扩展接口 7.5.3 常数分组 7.5.4 初始化接口中的字段 7.6 内部类 7.6.1 内部类和上溯造型 7.6.2 方法和作用域中的内部类 7.6.3 链接到外部类 ...

    计算机(专升本)Java程序设计复习资料.doc

    抽象类与接口的异同 抽象类和接口都不能够实例化,但可以定义抽象类和接口类型的引用。 一个类如果继承了某个抽象类或者实现了某个接口都需要对其中的抽象方法全部进行实 现,否则该类仍然需要被声明为抽象类。 ...

    Thinking in Java(中文版 由yyc,spirit整理).chm

    7.4 抽象类和方法 7.5 接口 7.5.1 Java的“多重继承” 7.5.2 通过继承扩展接口 7.5.3 常数分组 7.5.4 初始化接口中的字段 7.6 内部类 7.6.1 内部类和上溯造型 7.6.2 方法和作用域中的内部类 7.6.3 链接到外部类 ...

    java 编程入门思考

    7.4 抽象类和方法 7.5 接口 7.5.1 Java的“多重继承” 7.5.2 通过继承扩展接口 7.5.3 常数分组 7.5.4 初始化接口中的字段 7.6 内部类 7.6.1 内部类和上溯造型 7.6.2 方法和作用域中的内部类 7.6.3 链接到外部类 ...

    Java初学者入门教学

    7.4 抽象类和方法 7.5 接口 7.5.1 Java的“多重继承” 7.5.2 通过继承扩展接口 7.5.3 常数分组 7.5.4 初始化接口中的字段 7.6 内部类 7.6.1 内部类和上溯造型 7.6.2 方法和作用域中的内部类 7.6.3 链接到外部类 ...

    java联想(中文)

    7.4 抽象类和方法 7.5 接口 7.5.1 Java的“多重继承” 7.5.2 通过继承扩展接口 7.5.3 常数分组 7.5.4 初始化接口中的字段 7.6 内部类 7.6.1 内部类和上溯造型 7.6.2 方法和作用域中的内部类 7.6.3 链接到外部类 ...

    Java JDK 7学习笔记(国内第一本Java 7,前期版本累计销量5万册)

    6.2.4 再看final关键字 180 6.2.5 java.lang.object 181 6.2.6 关于垃圾收集 186 6.2.7 再看抽象类 189 6.3 重点复习 191 6.4 课后练习 192 chapter7 接口与多态 199 7.1 何谓接口 200 7.1.1 接口...

    JAVA_Thinking in Java

    7.4 抽象类和方法 7.5 接口 7.5.1 Java的“多重继承” 7.5.2 通过继承扩展接口 7.5.3 常数分组 7.5.4 初始化接口中的字段 7.6 内部类 7.6.1 内部类和上溯造型 7.6.2 方法和作用域中的内部类 7.6.3 链接到外部类 ...

    Thinking in Java简体中文(全)

    7.4 抽象类和方法 7.5 接口 7.5.1 Java的“多重继承” 7.5.2 通过继承扩展接口 7.5.3 常数分组 7.5.4 初始化接口中的字段 7.6 内部类 7.6.1 内部类和上溯造型 7.6.2 方法和作用域中的内部类 7.6.3 链接到外部类 ...

    Thinking in Java 中文第四版+习题答案

    7.4 抽象类和方法 7.5 接口 7.5.1 Java的“多重继承” 7.5.2 通过继承扩展接口 7.5.3 常数分组 7.5.4 初始化接口中的字段 7.6 内部类 7.6.1 内部类和上溯造型 7.6.2 方法和作用域中的内部类 7.6.3 链接到外部类 ...

    Thinking in java(中文)

    6.8 final关键字 6.8.1 final数据 6.8.2 final方法 6.8.3 final类 6.8.4 final的注意事项 6.9 初始化和类装载 6.9.1 继承初始化 6.10 总结 6.11 练习 <br>第7章 多形性 7.1 上溯...

    Think in Java(中文版)chm格式

    7.4 抽象类和方法 7.5 接口 7.5.1 Java的“多重继承” 7.5.2 通过继承扩展接口 7.5.3 常数分组 7.5.4 初始化接口中的字段 7.6 内部类 7.6.1 内部类和上溯造型 7.6.2 方法和作用域中的内部类 7.6.3 链接到...

    ThinkInJava

    7.4 抽象类和方法 7.5 接口 7.5.1 Java的“多重继承” 7.5.2 通过继承扩展接口 7.5.3 常数分组 7.5.4 初始化接口中的字段 7.6 内部类 7.6.1 内部类和上溯造型 7.6.2 方法和作用域中的内部类 7.6.3 链接到外部类 ...

    thinkinjava

    7.4 抽象类和方法 7.5 接口 7.5.1 Java的“多重继承” 7.5.2 通过继承扩展接口 7.5.3 常数分组 7.5.4 初始化接口中的字段 7.6 内部类 7.6.1 内部类和上溯造型 7.6.2 方法和作用域中的内部类 7.6.3 链接到外部类 ...

    leetcode添加元素使和等于-interviewGuide:面试指南

    3.final关键字有哪些作用? 4.Integer类会进行缓存吗? 5.抽象类有哪些特点? 6.String,StringBuffer和StringBuilder之间的区别是什么? 7.编译型编程语言,解释型编程语言,伪编译型语言的区别是什么? 8.Java中的...

Global site tag (gtag.js) - Google Analytics