首页 > Java > java教程 > 正文

JAVA编程思想笔记 : 复用类

(*-*)浩
发布: 2019-10-17 15:59:32
转载
2343人浏览过

复用代码是 java 众多引人注目的功能之一.但是想要成为机具革命性的语言,仅仅能复制代码并对之加以改变是不够的,它还必须能够做更多的事情.

JAVA编程思想笔记 : 复用类

组合语法

只需将对象引用置于新类中即可.

初始化引用位置

立即学习Java免费学习笔记(深入)”;

定义对象的地方,他们总是能够在构造器被调用之前初始化.

在类的构造器中

就在要使用这些对象之前,   --- 惰性初始化

实例初始化

继承语法

除非已明确指出要从其他类中继承,否则就是在隐式的从 java 的标准根类 Object 进行继承.

初始化基类

代理

Java 语言不直接支持代理. 很多开发工具却支持.

在集合与继承之间选择

组合和继承都允许在新的类中放置子对象. 组合是显式的做,继承则是隐式的做.

protected 关键字

就类用户而言,是 private 的,对于任何继承此类的导出类或其他任何位于同一个包内的类来说,他是可以访问的.

向上转型

you导出类转换为积累,在继承图上是向上移动的,成为向上转型.

向上转型是从一个较专用类型向较通用类型转换,所以总是很安全.

java-12.png

final 关键字

无法改变

final 数据

python学习笔记与简明教程 中文WORD版 2.03MB
python学习笔记与简明教程 中文WORD版 2.03MB

本文档是python学习笔记与简明教程;为什么用Python作为编程入门语言?每种语言都会有它的支持者和反对者。去Google一下“why python”,你会得到很多结果,诸如应用范围广泛、开源、社区活跃、丰富的库、跨平台等等等等,也可能找到不少对它的批评,格式死板、效率低、国内用的人很少之类。不过这些优缺点的权衡都是程序员们的烦恼。作为一个想要学点编程入门的初学者来说,简单才是最重要的。当学C++的同学还在写链表,学Java的同学还在折腾运行环境的时候,学Pyt

python学习笔记与简明教程 中文WORD版 2.03MB 0
查看详情 python学习笔记与简明教程 中文WORD版 2.03MB

一个既是 static 优势 final 的域只占据一段不能改变的存储空间.

对于基本类型,final 数值恒定不变.对于对象引用,final 使引用恒定不变.

一旦引用被初始化指向一个对象,就无法再把它改为指向另一个对象.然而对象本身是可以修改的.

Java 并未提供使任何对象恒定不变的途径.

这一限制同样适用数组,他也是对象.

根据惯例,既是 static 又是 final 的域将用大写表示,并适用下划线分隔各个单词.

空白 final

所谓的空白 final 是指被声明为 final 但又未给定初始值的域.

无论什么情况,编译器都确保空白 final 在使用前必须被初始化.

final 参数

允许在参数列表中以声明的方式将参数指明为 final.意味着你无法再方法中更改参数引用所指向的对象.

final 方法

1.把方法锁定,以防任何继承类修改它的含义.

2.效率,在早期实现,如果将一个方法指明为 final,就是同意编译器将针对该方法的所有调用都转为内嵌调用.

final 和 private 关键字

类中所有的 private 方法都是隐式地指定为 final 的.

由于无法采用 private 方法,也就无法覆盖它.

可以地 private 方法添加 final 修饰词,但并不能给该方法增加任何额外的意义.

"覆盖" 只有在某方法是基类的接口的一部分时才会出现.

必须将一个对象向上转型为她的基本类型并调用相同的方法.

final 类

禁止被继承,没有子类.

所有 final 类中的所有方法,都隐式指定为 final,无法覆盖.

 初始化及类的加载

class Insect {
    private int i = 9 ;
    protected int j ;
    Insect(){
        System.out.println("Insect constructor.");
        System.out.println("i= "+i+", j="+j);
        j = 39 ;
    }
    static int printInit(String s){
        System.out.println(s);
        return 47 ;
    }
}
public class Beetle  extends  Insect {
    private int k = printInit("Beetle.k initialized . ");
    public Beetle(){
        System.out.println("k = "+ k);
        System.out.println("j = " + j);
    }
    private static int x2 = printInit("static Beetle.x2 initialized ") ;
    public static void main(String[] args) {
        System.out.println("Beetle constructor.");
        Beetle b = new Beetle();
    }
}
输出:
static Beetle.x2 initialized 
Beetle constructor.
Insect constructor.
i= 9, j=0
Beetle.k initialized . 
k = 47
j = 39
登录后复制

以上就是JAVA编程思想笔记 : 复用类的详细内容,更多请关注php中文网其它相关文章!

相关标签:
最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:CSDN网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号