随笔分类 -  Java SE

摘要:Java容器框架提供了多种不同特性的容器方便我们管理任意数量的对象。11.1泛型和类型安全的容器JavaSE5之前的容器允许我们向其中放入不同类型的对象,但是取出的时候需要进行类型强制转换,很容易出现问题。有了泛型之后需要我们只能向集合里添加指定类型及其子类,取出时也不需要类型转换,这个功能是编译器... 阅读全文
posted @ 2015-09-18 18:08 superzhao 阅读(225) 评论(0) 推荐(0)
摘要:可以将一个类的定义放在另一个类的内部,这就是内部类。1.可以实现隐藏2.内部类了解外围类,并能与之通信,很多时候可以写出更加优雅和清晰的代码10.1创建内部类public class Outer{ class Inner{ }}如果想从外部类的"非静态方法之外"的任意位置创建某个内部类对象,那么... 阅读全文
posted @ 2015-09-17 18:10 superzhao 阅读(319) 评论(0) 推荐(0)
摘要:接口和内部类为我们提供了一种将接口与实现分离的更加结构化的方法。9.1抽象类和抽象方法如果我们的基类只是希望它被继承从而通过它的接口操作导出类,它本身创建对象没有什么意义,那么我们可以把这个基类设计为抽象类。把在基类中不好实现的方法标记为abstract。这样做可以使类的抽象性更加明确。9.2接口i... 阅读全文
posted @ 2015-09-16 18:16 superzhao 阅读(537) 评论(0) 推荐(0)
摘要:OOP语言中,多态是封装、继承之后的第三种基本特征。封装:通过合并特征和行为来创建新的数据类型,“实现隐藏”通过细节“私有化”把接口和实现分离。继承:以复用接口方式从已有类型用extends关键字创建新类型,并允许向上转型。多态:消除类型之间的耦合关系(分离做什么和怎么做),基于继承的向上转型功能,... 阅读全文
posted @ 2015-09-15 18:04 superzhao 阅读(612) 评论(0) 推荐(0)
摘要:复用代码是Java众多引人注目的功能之一。但仅仅能复制代码并对之加以改变是不够的,还需要做更多的事情。复用代码的两种形式:1.组合,新类中产生现有类对象2.继承,用现有类型创建新类型7.1组合语法7.2继承语法7.2.1初始化基类当创建了一个导出类的对象时,该对象包含了一个基类的子对象。这个子对象与... 阅读全文
posted @ 2015-09-14 18:02 superzhao 阅读(306) 评论(0) 推荐(0)
摘要:访问控制(或隐藏具体实现)与“最初的实现并不恰当”有关。很多时候我们需要重构代码使之更可读,更易理解,更具维护性,但是又不能影响到客户端程序员的正常使用。我们根本不知道客户端程序员使用了哪些东西(方法),所以我们也不知道哪些东西可以改,为了解决这个问题,java提供了访问权限修饰词。访问修饰词加上包... 阅读全文
posted @ 2015-09-11 17:00 superzhao 阅读(186) 评论(0) 推荐(0)
摘要:随着计算机革命的发展,“不安全”的编程方式已经逐渐成为编程代价高昂的主因之一。初始化和清理,正是涉及安全的俩个问题。5.1 用构造器确保初始化构造器名与类名相同,没有返回值5.2 方法重载构造器的重载与方法重载5.2.1 区分重载的方法参数列表的不同(不同顺序也是重载,但不建议这么做)5.2.2 涉... 阅读全文
posted @ 2015-08-07 17:39 superzhao 阅读(247) 评论(0) 推荐(0)
摘要:4.1 true和false所有条件语句都用真和假来判断。4.2 if-elseif(bool-exp) statement; or if(bool-exp) statement; else statement;4.3 迭代while(b){} do{}while(b)for(init;b;step... 阅读全文
posted @ 2015-08-05 17:05 superzhao 阅读(164) 评论(0) 推荐(0)
摘要:在最底层,Java中的数据是通过操作符来操作的。3.1更简单的打印语句把System.out.println(x);封装在一个类里,然后用静态导入方式,使得打印不必写那么长。import static net.mingview.util.Print.*;静态导入Print类里所有方法。3.2使用Ja... 阅读全文
posted @ 2015-07-30 18:20 superzhao 阅读(190) 评论(0) 推荐(0)
摘要:尽管Java是基于C++的,但是Java是一种更纯粹的面向对象语言。2.1用引用操作对象 每种编程语言都有自己操作内存中元素的方式。有时候程序员需要注意将要操作的数据是什么类型。是直接操控元素,还是用某种基于特殊语法的间接表示(如C和C++中的指针)。 Java中是非常简单的,由于一切都是对... 阅读全文
posted @ 2015-07-29 17:59 superzhao 阅读(389) 评论(0) 推荐(0)
摘要:1.1 抽象过程所有语言都是抽象的,但是抽象的类型和质量决定了解决问题的复杂度A.针对机器模型建模-----------------------------------------------------------------------------------------------------... 阅读全文
posted @ 2015-06-25 09:49 superzhao 阅读(213) 评论(0) 推荐(0)
摘要:注:整理到这部分知识点时候发现有很多问题还没搞清楚,所以这里可能会存在很多不够详细甚至错误的理解,准备翻一遍编程思想再来更新,欢迎评论交流当JVM执行到这么一句代码: new Person().setName("superzhao")它会做这么几件事类加载JVM会用类加载器加载xxx.Person这... 阅读全文
posted @ 2015-06-24 15:49 superzhao 阅读(2642) 评论(0) 推荐(0)
摘要:final1.final 类 表示该类不可继承,2.final 方法 表示该方法不可被覆盖3.final 域 表示该字段一被初始化就不能再改变(必须确保在构造器执行之后final域均被设置,且不可改变) final用于基本类型和不可变类型,对象类型不可变的只是引用没有意义4.final... 阅读全文
posted @ 2015-06-24 14:55 superzhao 阅读(1407) 评论(0) 推荐(0)
摘要:Java 核心卷1.简单性2.面向对象: 关注椅子而非工具3.网络技能: Http/Ftp, 远程方法调用(分布式)4.健壮: Java指针模型(不损坏数据结构和重写内存)5.安全: 适用于网络/分布式环境6.体系结构中立: 字节码文件适用于各平台7.可移植8.解释型: ... 阅读全文
posted @ 2015-06-19 11:40 superzhao 阅读(162) 评论(0) 推荐(0)
摘要:package blog.superzhao.helloblog;public class HelloBlogGarden { public static void main(String[] args) { System.out.println("Hello Blog Garden,... 阅读全文
posted @ 2015-06-19 11:15 superzhao 阅读(131) 评论(0) 推荐(0)