您的位置:首页 > 编程语言 > Java开发

JAVA SE 面向对象笔记

2016-07-21 09:05 253 查看
纪念LINUX 课外网络小知识

网络小tips:

1、telnet www.xxx.com 80 (telnet 一种解析域名的服务 80默认端口)

2、发现不通 就ping www.xxx.com

3、ping不通 win下 tracert www.xxx.com

linux下 traceroute www.xxx.com

2016-8-21

几点注意:

①线程是一个程序里面不同的执行路径

②进程是一个静态的概念

事实上,进程在执行指的是进程里面主线程开始执行了



stack (栈) 存放局部变量

heap (堆) 存放new出来的东西

data segment(变量区) 静态变量和字符串变量

code segment (代码区) 存放代码

④在这里记录下Set和List 用迭代器遍历方法

//LIST
for(Iterator iter =list.iterator(); iter.hasNext();){
String str=(String )iter.next();

System.out.println(str);
}

//Set

Set keyset = mapmysql.keySet();

for (Iterator iterator = keyset.iterator();iterator.hasNext();){

int key = (int) iterator.next();

int values = (int) mapmysql.get(key);
}


⑤读数据

//byte读取
InputStream is =    xx.getInputStream();
byte[] buffer =new byte[1024];
int length = 0;

while (-1 != (length = is.read(buffer, 0, buffer.length))) {
String str1 = new String(buffer, 0, length,"GBK");

}

//scanner读取
InputStream is =    xx.getInputStream();
Scanner scanner = new Scanner(is);
String str=scanner.nextLine();


⑥写数据(不用write写)

private PrintWriter pwrite=null;

pwrite= new PrintWriter(xx.getOutputStream());

pwrite.println(string);

assII码表





7月19号

1、命名规则:

a)类命名规则:首个字母大写,后面每个单词字母大写

b)方法命名规则:首个字母小写,后面每个单词字母大写

c)属性命名规则:首个字母小写,后面每个单词字母大写

2、静态代码块:静态代码块会第一时间运行,其次构造方法

3、常用异常类:NullPointerException(空指针异常)、ClassCastException(类转换异常)、IndexOutOfBoundsException(下标越界异常)。

4、逻辑运算符:短路

7月20号

1、封装

a)每个类都一个默认为空的构造方法

二、继承:

a)父类有的方法子类一定有,子类可以重写父类的方法

b)Java 是单继承的,意味着一个类只能从另一个类继承(被继承的类叫做父类,继承的类叫做子类),Java 中的继承使用 extends 关键字。

C)super 关键字:super 表示对父类对象的引用。

1、关于继承的 3 点:

a)父类有的,子类也有

b)父类没有的,子类可以增加

c)父类有的,子类可以改变

2、关于继承的注意事项

a)构造方法不能被继承

b)方法和属性可以被继承

c)子类的构造方法隐式地调用父类的不带参数的构造方法

d)当父类没有不带参数的构造方法时,子类需要使用 super 来显式地调用父类的构造方法,super 指的是对父类的引用

e) super 关键字必须是构造方法中的第一行语句。

三、多态:父类型的引用可以子类的对象

四、接口里面的方法不用实现,类里面的方法需要实现,抽象类里面的方法可实现可以不实现

五、静态变量或方法不能调用非静态变量或方法

7月21号

1、object是所有类的超类,所有类隐式调用object类

2、object类中equals方法的注意情况

自反性:对于任何非空引用值 x,x.equals(x) 都应返回 true。

对称性:对于任何非空引用值 x 和 y,当且仅当 y.equals(x) 返回 true 时,x.equals(y) 才应返回 true。

传递性:对于任何非空引用值 x、y 和 z,如果 x.equals(y) 返回 true,并且 y.equals(z) 返回 true,那么 x.equals(z) 应返回 true。

一致性:对于任何非空引用值 x 和 y,多次调用 x.equals(y) 始终返回 true 或始终返回 false,前提是对象上 equals 比较中所用的信息没有被修改。

对于任何非空引用值 x,x.equals(null) 都应返回 false。

3、对于 String 类的 equals()方法来说,它是判断当前字符串与传进来的字符串的内容是否一致。

4、String s = “aaa”;(采用字面值方式赋值)

1)查找 String Pool 中是否存在“aaa”这个对象,如果不存在,则在 String Pool 中创建一个“aaa”对象,然后将 String Pool 中的这个“aaa”对象的地址返回来,赋给引用变量 s,这样 s 会指向 String Pool 中的这个“aaa”字符串对象

2)如果存在,则不创建任何对象,直接将 String Pool 中的这个“aaa”对象地址返回来,

赋给 s 引用。

5、 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“对象。

6、java.lang包下面的类不用导入,其他包下面的类需要导入

7月22号

1、输入流和输出流的基准是程序。从程序往外输出叫输出流,从程序外输入叫输入流

2、常用流:文件流,字符流,字节流

3、处理乱码问题 String str = result.getBytes(“utf-8”);

可以查API查询I/O流的方法





7月25号

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  JAVA-SE 面向对象