- 浏览: 55489 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
892870119:
这么基础的问题,我怎么不知道,查了半天,唉~~~~
Struts s:if 标签 判断中文 -
wnjustdoit:
给力。。。。
struts.xml向页面传参 -
summer_021:
wkshippou 写道汗!怎么去添加web应用的时候不要加上 ...
EE5 jar 冲突解决办法 -
wkshippou:
汗!怎么去
EE5 jar 冲突解决办法
Java SE Lesson 3
1. 接口中所声明的方法都是抽象方法。接口中的方法都是public的。
2. 接口中也可以定义成员变量。接口中的成员变量都是public、final、static的。
3. 一个类不能既是final,又是abstract的。因为abstract的主要目的是定义一种约定,让子类去实现这种约定,而final表示该类不能被继承,这样abstract希望该类可以被继承而final明确说明该类不能被继承,两者矛盾。因此一个类不能既是final的,又是abstract的。
4. Design Pattern(设计模式)。单例模式(Singleton):表示一个类只会生成唯一的一个对象。
第一种方法:
public class SingletonTest { public static void main(String[] args) { Singleton singleton = Singleton.getInstance(); Singleton singleton2 = Singleton.getInstance(); System.out.println(singleton == singleton2); } } class Singleton { private static Singleton singleton; // 覆盖默认的构造方法 private Singleton() { } public synchronized static Singleton getInstance() { if (singleton == null) { singleton = new Singleton(); } return singleton; } }
第二种方法:
public class SingletonTest { public static void main(String[] args) { Singleton singleton = Singleton.getInstance(); Singleton singleton2 = Singleton.getInstance(); System.out.println(singleton == singleton2); } } class Singleton { private static Singleton singleton = new Singleton(); // 覆盖默认的构造方法 private Singleton() { } public static Singleton getInstance() { return singleton; } }
5. 包(package)。用于将完成不同功能的类分门别类,放在不同的目录(包)下。包的命名规则:将公司域名反转作为包名。www.baidu.sb,sb.baidu(包名),对于包名:每个字母都需要小写。如果定义类的时候没有使用package,那么Java就认为我们所定义的类位于默认包里面(default package)。
6. 编译带有package声明的Java源文件有两种方式:
a) 直接编译,然后根据类中所定义的包名,逐一手工建立目录结构,最后将生成的class文件放到该目录结构中(很少使用,比较麻烦)。
b) 使用编译参数 –d,方式为javac –d . 源文件.java,这样在编译后,编译器会自动帮助我们建立好包所对应的目录结构。
7. 有两个包名,分别是aa.bb.cc与aa.bb.cc.dd,那么我们称后者为前者的子包。
8. 导入(import),将使用package分离的各个类导入回来,让编译器能够找到所需要
的类。
9. import的语法:import sb.baidu.PackageTest;
10. import sb.baidu.*,表示导入sb.baidu包下面的所有类。
11. import aa.bb.*并不会导入aa.bb.cc包下面的类。这时需要这样写: import aa.bb.cc.*;
12. 关于package、import、class的顺序问题:
a) 首先需要定义包(package),可选
b) 接下来使用import进行导入,可选
c) 然后才是class或interface的定义。
13. 如果两个类在同一个包下面,那么则不需要导入,直接使用即可。
14. 访问修饰符(access modifier)。
1) public(公共的):被public所修饰的属性和方法可以被所有类访问。
2) protected(受保护的):被protected所修饰的属性和方法可以在类内部、相同包以及该类的子类所访问(子类可以在不同包下,换句话说:能够被子类继承下来。 在子类内部生成父类对象,无法访问父类protected属性)。
3) private(私有的):被private所修饰的属性和方法只能在该类内部使用(子类无法继承下来)。
4) 默认的(不加任何访问修饰符):在类内部以及相同包下面的类所使用。
15. instanceof:判断某个对象是否是某个类的实例。语法形式:引用名 instanceof 类名(接口名),返回一个boolean值。
16、17点无。
People people = new Man(); System.out.println(people instanceof People);
//结果为true,因为Man是People的子类,根据继承,子类就是父类,因此Man也可以看作是People的实例。
18. 相等性的比较(==)
1) 对于原生数据类型来说,比较的是左右两边的值是否相等。
2) 对于引用类型来说,比较左右两边的引用是否指向同一个对象,或者说左右两边的引用地址是否相同。
19.java.lang.Object类。java.lang包在使用的时候无需显式导入,编译时由编译器自动帮助我们导入。
20. API (Application Programming Interface),应用编程接口。
21. 当打印引用时,实际上会打印出引用所指对象的toString()方法的返回值,因为每个类都直接或间接地继承自Object,而Object类中定义了toString(),因此每个类都有toString()这个方法。
22. 关于进制的表示:16进制,逢16进一,16进制的数字包括:0~9,A,B,C,D,E,F,
23. equals()方法,该方法定义在Object类当中,因此Java中的每个类都具有该方法,对于Object类的equals()方法来说,它是判断调用equals()方法的引用与传进来的引用是否一致,即这两个引用是否指向的是同一个对象。对于Object类的equals()方法来说,它等价于==。
24. 对于String类的equals()方法来说,它是判断当前字符串与传进来的字符串的内容是否一致。
25. 对于String对象的相等性判断来说,请使用equals()方法,而不要使用==。
26. String是常量,其对象一旦创建完毕就无法改变。当使用+拼接字符串时,会生成新的String对象,而不是向原有的String对象追加内容。
27.对于String类型的java会维护 String Pool(字符串池)
28. String s = “aaa”;(采用字面值方式赋值)
1) 查找String Pool中是否存在“aaa”这个对象,如果不存在,则在String Pool中创建一个“aaa”对象,然后将String Pool中的这个“aaa”对象的地址返回来,赋给引用变量s,这样s会指向String Pool中的这个“aaa”字符串对象
2) 如果存在,则不创建任何对象,直接将String Pool中的这个“aaa”对象地址返回来,赋给s引用。
29. String s = new String(“aaa”);
1) 首先在String Pool中查找有没有“aaa”这个字符串对象,如果有,则不在String Pool中再去创建“aaa”这个对象了,直接在堆中(heap)中创建一个“aaa”字符串对象,然后将堆中的这个“aaa”对象的地址返回来,赋给s引用,导致s指向了堆中创建的这个“aaa”字符串对象。
2) 如果没有,则首先在String Pool中创建一个“aaa“对象,然后再在堆中(heap)创建一个”aaa“对象,然后将堆中的这个”aaa“对象的地址返回来,赋给s引用,导致s指向了堆中所创建的这个”aaa“对象。
String str = new String("aa"); String str2 = new String("aa"); System.out.println(str.equals(str2));// 比较字符串内容true System.out.println(str==str2);//false System.out.println(str.intern()==str2.intern());//true System.out.println(str.intern());//aa //intern:池里面有直接返回池里面的对象 //池里面没有则放到池里面然后返回刚添加的对象
发表评论
-
Java SE Lesson22_ClassLoader
2012-06-29 15:10 703Java虚拟机与程序的生命周期 在如下几种情况下,Java ... -
Java SE 19-24讲 Lesson2
2012-05-25 14:57 8301. 多态:父类型的引用可以指向子类型的对象。 具体指向的是父 ... -
Java SE 第12、13、14、15、16、17、18讲
2012-05-23 11:48 658JAVA SE Lesson 1(第12、13 ... -
Java SE 第十一讲 面向对象 封装
2012-05-23 09:39 570Java SE 第十一讲 1. 如果一个类包含了属性与方法 ... -
Java SE 第十讲 面向对象_封装
2012-05-22 13:39 773Java SE 第十讲 1. 类中 ... -
Java SE 第九讲 封装_方法
2012-05-22 11:10 631Java SE 第九讲 1. 面向对象程序设计的三大基本特征 ... -
Java SE 第八讲 break continue 面向对象简介
2012-05-22 10:36 638Java SE 第八讲 1. break语句:经常用在循环语 ... -
Java SE 第7讲 循环语句
2012-05-22 10:31 610Java SE 第7讲 1. Java中的循环控制语句一共有 ... -
Java SE 第六讲:运算符续 条件运算符
2012-05-22 08:39 635Java SE 第六节 1. 条件运算符(三元表达式),其形 ... -
Java SE 第五讲:运算符续 Operator cont
2012-05-21 14:33 635Java SE 第五讲: 1. 关系运算符:大于(>) ... -
Java SE 第四讲(运算符 Operator)
2012-05-21 14:10 625Java SE 第四讲: 1. 当有若干个变量参与运算时,结 ... -
Java SE 第三讲 Java原生数据类型
2012-05-21 12:58 1025Java SE 第三讲: 1. Java中的原生数据类型共有8 ... -
Java SE 第二讲_原生数据类型
2012-05-21 11:00 794Java SE 第二讲: 1. Windows: notep ... -
Java SE 第一讲_JDK下载_安装_Java程序编译与执行
2012-05-21 10:01 705Java SE 第一讲: Java SE:Java Stan ... -
后端发HTTP请求
2011-09-21 09:47 1028package com.m4g.bns.common.util ... -
工具集_是否是同一天
2011-09-21 08:53 623public static boolean isTheS ... -
工具集_判断是否数字
2011-09-21 08:51 609String param = "0123456787 ... -
List删除元素
2011-06-02 11:57 677方法一 Java代码 ArrayList<S ...
相关推荐
[北京圣思园Java培训教学视频]Java.SE.Lesson.3_code.rar
[北京圣思园Java培训教学视频]Java.SE.Lesson.4_code.rar
Lesson24_3.ino
[lesson2_2.1]AS3语法——流程控制语句.rar [lesson2_2.1]AS3语法——流程控制语句.rar
郭天祥51单片机_LESSON3_数码管静态显示及定时器和中断应用ppt,
北京圣思园Java培训教学视频]Java.SE.Lesson.2_code 张龙老师经典视频源代码
[北京圣思园Java培训教学视频]Java.SE.Lesson.5_code.rar )
北京圣思园Java培训教学视频]Java.SE.Lesson.1_code 源代码共享出来,给大家分享
Lesson1_Assignment_Class.html
It describes for JAVA API Lesson
stm32_Lesson2_TIM_INTERRUPT_stm32_源码.zip
高级英语阅读Lesson15_What_life_means_to_me译文.docx
c__ppt_教程Lesson05_Demo.ppt
lesson1_print.zip
七年级冀教版英语Lesson16_Happy_or_sad.ppt
lesson1_overview.wrf
lesson6_t4.hex
lesson2_codes.rar
The Java盲 2 platform provides internationalization features that let you separate culturally dependent data from the application (internationalization) and adapt it to as many cultures as needed ...
[lesson2_2.2]AS3语法——控制语句和数据类型.rar