实例
引用 实质指针
封装
for 的不同形式 for (int i : Location)
集合类 ArrayList<Egg> = new ArrayList<Egg>()
import 作用, 只是提供缩写
继承 "有一个" 和 "是一个" 区别
多肽 向上转型 和 向下转型 ( 向上转型没问题, 向下转型要判断 )
final class 不能被继承的累
final 变量, 常量
final 方法, 不能被重写(覆盖)
如果内部类被定义为 private final class Inner, 那么即不能被继承, 因为有final, 也不能被外部调用, 因为有Private, 所以就只能内部用
方法的重写(覆盖), 是指子类的方法重写父类同名方法
注意, 重写和多肽是完全不同的两个概念

多肽, 是指"动态绑定", 向下转型, 向上转型,( 也是依赖继承, 才能实现多肽)

接口, interface, 特殊的抽象类, 只能拥有抽象方法.
抽象类, abstract class, 只能被继承, 不能被实例化的类, 例如 animal
抽象方法, 没有实体, 只能被覆盖, 抽象方法只能存在于抽象类中, 如果一个类里有一个以上抽象方法, 则必须声明为抽象类
如果一个类继承了抽象类, 并且没有实现该抽象方法, 那么这个类也必须是抽象的
抽象类中可以存在非抽象方法, 可接口里只能声明一种用 public 来修饰的没有具体实现的方法.抽象类的成员变量可以被不同的修饰词来修饰, 但是接口中的成员变量默认都是静态常量.

设计类
如果新的累无法对其他类通过IS-A 测试, 就设计成不继承的类 // 类
只有在需要某类特殊化的版本时, 以覆盖或增加新的方法来继承现有类 // 继承
当你需要定义一个子类的模板, 又不系那个让程序员初始化此模板, 设计抽象类 // 抽象类
如果定义出类可以扮演的角色, 接口  // 接口

内存结构
局部变量 和 方法(包括实例方法) 存储在 栈 中
实例变量 和 对象 保存在 堆 中

构造函数, 默认构造函数, 注意在构造函数首行, supper(), 或 this(aaa) 这两种不能兼得, 必须放在首行, 想栈结构
另外, 构造函数会有连锁反应, 总是先调用父类构造函数.

静态方法, 不需要实例化就可以调用的方法, 类似静态变量, 静态变量是一种“共享变量”
包装类, 是只对原子类型的包装, 例如 int 和 integer.
异常, 首先是方法抛出异常, 而 try catch 只是在你调用该方法时, 要用的一种手段来捕获异常. 处理多重异常时, catch 要由小变大

事件与监听
事件源: 能够触发的事件 例如, button 是一个事件源
监听接口, 是介于事件源与处理事件的对象之间的桥梁 button.addActionListener(this), 其中由于这个事件源实现了监听接口, 那么桥梁建立成功, this就是用来处理事件触发后的对象
如果事件源能够触发多种事件, 那么如何处理的, 我们的办法就是定义两个对象分别来进行处理, 那么怎么做的?
1. has-A 的关系, 我们可以在这个类中定义两个实例变量,这两个对象分别就是处理事件的对象的实例, 但是这样有个问题, 就是这两个处理的对象不能够访问事件源本身,
   例如, 屏幕上有个圆形图, 我想每次点击它时, 它变大, 事件点击->事件处理都没问题, 但是事件处理->圆变大就有问题, 因为事件处理对象无法访问到“圆”, 所以这个方法不行
2. 内部类, 同样是定义两个实例变量, 这两个变量时处理事件对象的实例, 但是这两个处理事件的对象的类的定义在事件源内部, 这样, 这两个类就可以访问到事件源中的内容,还是上边的例子
   例如, 屏幕上有个圆形图, 我想每次点击它时, 它变大, 事件点击->事件处理->圆变大都没有问题.

内部类可以随意使用外部类的成员变量(包括私有)而不用生成类的对象, 这是内部类的唯一优点.

所谓RMI, 是一种远程调用接口, 就好比, 你目前想调用一个对象, OK, 没问题, 因为都在你本地的java虚拟机中,但是如果你想调用其他机器的类,怎么办, 可以使用java提供的 scoket 来实现,
java 有一套组件RMI, 使得你调用其他机器的类时, 感觉和调用你本地虚拟机的类一样感觉.

泛型, <>, 目前看到 ArrayList 在使用, 感觉像类型模板

java 命令行编辑模式  javac -d ( 将class文件放置目录 ), -classpath 引用的类, -sourcepath 提供到package根部, 因为有是有你引用了别的类, 而该类没有在classpath中, 那么使用这个源路径帮助编译
环境变量  JAVA_HOME, classpath, PATH
单元测试  JUnit

java 名词解释等的更多相关文章

  1. java名词解释

    依赖注入 DI 面向切面编程 AOP 简单java对象 POJO -- JavaBean(spring称呼) 企业级javabean EJB

  2. java名词解释,让你更好理解

    Java 开发工具包 (JDK) Java开发工具包是Java环境的核心组件,并提供编译.调试和运行一个Java程序所需的所有工具,可执行文件和二进制文件.JDK是一个平台特定的软件,有针对Windo ...

  3. nodejs、npm、grunt——名词解释

    最近着手开发一个新项目,打算从工程化的角度整理一套自己的前端开发.发布体系. grunt这些工具,之前别人用我也用,并没有认真想过它们的前世今生,正好趁着这个机会,我来理一理目前业界比较流行这些工具的 ...

  4. b2c项目基础架构分析(二)前端框架 以及补漏的第一篇名词解释

    继续上篇,上篇里忘记了也很重要的前端部分,今天的网站基本上是以一个启示页,然后少量的整页切换,大量的浏览器后台调用web服务局部.动态更新页面显示状态这种方式在运作的,从若干年前简单的ajax流行起来 ...

  5. b2c项目基础架构分析(一)b2c 大型站点方案简述 已补充名词解释

    我最近一直在找适合将来用于公司大型bs,b2b b2c的基础架构. 实际情况是要建立一个bs架构b2b.b2c的网站,当然还包括wap站点.手机app站点. 一.现有公司技术人员现状: 1.熟悉asp ...

  6. X窗口系统名词解释

    前端时间Gentoo的桌面环境出了点问题,发现自己对Linux的桌面环境了解的很少,于是恶补了一下知识,以下名词解释基本上都是来自维基百科的条目和<Linux程序设计(第三版)>.一般而言 ...

  7. maven名词解释

    Maven名词解释 Project:任何你想build的事物,Maven都可以认为它们是工程.这些工程被定义为工程对象模型(POM,Poject Object Model).一个工程可以依赖其它的工程 ...

  8. [给自己扫盲]名词解释——LAMP、MEAN、Web应用框架等

    名词解释 LAMP The LAMP software bundle (here additionally with Squid). A high performance and high-avail ...

  9. JavaSE--【转】网络安全之证书、密钥、密钥库等名词解释

    转载 http://www.cnblogs.com/alanfang/p/5600449.html 那些证书相关的名词解释(SSL,X.509,PEM,DER,CRT,CER,KEY,CSR,P12等 ...

随机推荐

  1. MYSQL注入天书之服务器(两层)架构

    Background-6 服务器(两层)架构 首先介绍一下29,30,31这三关的基本情况: 服务器端有两个部分:第一部分为tomcat为引擎的jsp型服务器,第二部分为apache为引擎的php服务 ...

  2. 深入浅出ES6(十一):生成器 Generators,续篇

    作者 Jason Orendorff  github主页  https://github.com/jorendorff 欢迎回到深入浅出ES6专栏,望你在ES6探索之旅中收获知识与快乐!程序员们在工作 ...

  3. 全国DNS汇总

    全国DNS汇总 来路不明的DNS服务器可能导致你的帐号密码轻易被盗,请谨慎使用!在中国大陆,最科学的方法是将首选DNS服务器设置为114.114.114.114,备用DNS服务器设置为当地电信运营商的 ...

  4. [Sharepoint]备份 迁移 还原

    在sharepoint 的备份当中,一般分为一个sharepoint 站点的备份和sharepoint 整个站点的备份.我们可以用sharepoint designer 进行备份, 也可以用 stsa ...

  5. hdu 3404 Switch lights 博弈论

    主要是求NIM积!!! 代码如下: #include<iostream> #include<cstdio> #include<stack> #include< ...

  6. Linux信号处理2

    引言 先看以下两个信号量: 13)SIGPIPE     当管道读端关闭,再往管道写东西,会发出SIGPIPE信号 17)SIGCHLD   子进程退出会向父进程发出SIGCHLD信号,系统默认处理是 ...

  7. 数论之高次同余方程(Baby Step Giant Step + 拓展BSGS)

    什么叫高次同余方程?说白了就是解决这样一个问题: A^x=B(mod C),求最小的x值. baby step giant step算法 题目条件:C是素数(事实上,A与C互质就可以.为什么?在BSG ...

  8. Android 核心分析 之五基本空间划分

    基本空间划分 Google给了我们一张系统架构图,在这张图上我们可以看到Android的大体框架组成.                   11.jpg (175.6 KB, 下载次数: 0) 下载附 ...

  9. Centos环境下部署游戏服务器-软件安装

    这篇文章主要介绍一下游戏服务器需要安装的软件和需要修改的配置.现介绍下项目,本项目服务器端是c++ + mysql组合,客户端是as写的,需要安装的服务为Mysql,Php,Apache, 以及一个n ...

  10. Linux内核通杀提权漏洞CVE-2016-5195 - 内核升级方法

    如题,对于脏牛(Dirty COW)漏洞的修复方式已经在上篇文章中有介绍过如何验证,这里对如何升级内核给出修复建议. (注意:为避免不必要的生产风险的发生,请审核自己的实际环境而决定采用什么方法进行升 ...