您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > Java编程思想整理
Java编程思想笔记全面的将Thinkinginjava的知识点系统整理了下.与之前整理的东西不同,这部分可能更适合自己看,不过还是希望对大家有所帮助(其实还有很多java基础东东,thinkinginjava没有提到,后面也会给出相应的整理文档,主要是net,rmi,security等)若有疑问ymkyve501@gmail.com目录Java编程思想笔记.............................................................................................................2第1章对象导论......................................................................................................2第2章一切都是对象..............................................................................................2第3章操作符..........................................................................................................4第4章控制执行流程...............................................................................................7第5章初始化和清理...............................................................................................7第6章访问权限控制...............................................................................................9第7章复用类..........................................................................................................9第8章多态..............................................................................................................9第9章接口............................................................................................................12第10章内部类......................................................................................................14第11章持有对象..................................................................................................17第12章通过异常处理错误...................................................................................22第13章字符串......................................................................................................26第14章类型信息..................................................................................................28第15章泛型..........................................................................................................33第16章数组..........................................................................................................34第17章容器深入研究...........................................................................................35第18章JavaI/O系统............................................................................................38第19章枚举类型..................................................................................................42第20章注解..........................................................................................................45第20章并发..........................................................................................................46第22章图形化用户界面.......................................................................................63Java编程思想笔记第1章对象导论看完整本书再来看第1章会更有体会.1.万物皆对象2.程序是对象的集合,它们通过发送消息来告知彼此所要做的3.每个对象都有自己的由其他对象所构成的存储4.每个对象都拥有类型5.某一特定类型的所有对象都可以接收同样的消息第2章一切都是对象1.OOP:ObjectOrientedProgramming面向对象的程序设计2.Java用引用(reference)操纵对象Strings;3.必须由你创建所有对象3.1一般用new来创建(堆)Strings=newString(str);对象的存储的地方(内存)a.寄存器b.栈c.堆d.常量存储e.非RAM存储3.2基本类型(栈)Java的基本类型所占存储空间的大小是确定的基本类型大小最小值最大值包装类型boolean---Booleanchar16bitUnicodeCharacterbyte8bitByteshort16bitShortint32bitIntegerlong64bitLongfloat32bitFloatdouble64bitDoublevoid---Void因为char是unicode(采用双字节对字符进行编码),可以存储汉字chara='工';//char可以存储汉字,unicode编码2bitjavascript:void(0)Stringstr=工;//占多少bit要视其编码UTF-8占3bitGBK占2bit3.3高精度数字没有对应的基本类BigInteger:支持任意精度的整数BigDecimal:支持任务精度的定点数4.类4.1成员变量中基本类型成员默认值booleanfalsechar‘\u0000’nullbyte(byte)0short(short)0int0long0Lfloat0.0fdouble0.0d注意:这里是指基本类型作为类成员变量时有默认值,若在方法中出现的局部变量,未初始化是不能引用的(编译不通过)4.2参数传送一般对象传递的是reference,而基本类型传递的是值publicstaticvoidmain(String[]args){intc=2;System.out.println(get(c));System.out.println(c);}staticintget(inti){i=3;returni;}5.Java编译与运行(具体参考JVM部分文档)Javac编译javacTestLoader.javaJava运行(-cp–classpath可指定classpath)javaTestLoaderJavadoc提取注释javadocTestLoader.java另外也要注意类加载问题(具体参考ClassLoader部分文档)//BootStrapClassLoader加载的classSystem.out.println(System.getProperty(sun.boot.class.path));//ExtClassLoader加载的classSystem.out.println(System.getProperty(java.ext.dirs));//AppClassLoader加载的classSystem.out.println(System.getProperty(java.class.path));6.注释和嵌入式文档解决代码文档的维护问题:将代码同文档”链接”起来.第3章操作符在最底层,java中的数据是通过使用操作符来操作的原码:一个整数,按照绝对值大小转换成的二进制数,称为原码反码:将二进制数按位取反,所得的新二进制数称为原二进制数的反码补码:反码加1称为补码1.Java中的二进制(以byte为例)42的正数表示:0010101042的负数表示:00101010取反再加1,即11010110高位表示符号位,所以byte型的最大表示范围为-128~127//以下解析过程就会越界//1.Integer.toBinaryString(-100)解析-100为二进制//2.Integer.parseInt(11111111111111111111111110011100,2)//2.把11111111111111111111110011100当作无符号表示来解析.Integer.parseInt(Integer.toBinaryString(-100),2);2.逻辑运算符&&||!3.按位操作符&|~^位运算符应用于每个二进制位位运算都要当作是补全位数的值来运算~按位非(NOT)(一元运算)&按位与(AND)|按位或(OR)^按位异或(XOR)(位相同为0,不同为1)右移(高位不变)右移(无符号位移,高位一起移动)运算符结果左移&=按位与赋值|=按位或赋值^=按位异或赋值=右移赋值=右移赋值,左边空出的位以0填充=左移赋值//以下按byte来计算//00000000&00000001System.out.println(0&1);//00000000|00000001System.out.println(0|1);//~00000001System.out.println(~1);//00000000^00000001System.out.println(0^1);输出:0,1,-2,1另外注意:对byte和shor的移位运算,会先转换成int再移位.再截断再赋值4.三元操作符boolean?truevalue:falsevalue5.++操作符inti=0;//表达式先
本文标题:Java编程思想整理
链接地址:https://www.777doc.com/doc-6372397 .html