java学习笔记(上)
来源:互联网 发布:盗号软件下载免费 编辑:程序博客网 时间:2024/06/06 14:06
1.java是纯面向对象语言,较之c++而言,严格规定了很对面向对象的东西,同时又减去了c++中很多复杂的东西,如指针,内存的申请和释放等等......
2.数据类型的转换,大容量的数据转换成小容量要加上强制转换符,而小容量向上转换则可加可不加.
3.java中的方法类似于c中的函数,包含有返回类型,函数名,变量声明等.
4.java中的类都是单继承,使用extends关键字来实现继承,所有的类都继承自object类,所以object类中的方法在其子类中都可以使用或重写.
5.java如果想实现多重继承可以使用接口,接口是一种抽象方法和常量值定义的集合.成员变量默认是public static final(也只能是它),且定义的方法都不用实现,需要交给继承接口的类来实现它.定义接口的关键字是interface,使用接口的关键字为implements.
6.可以有同名方法,但是所传的形参必须不同,这就是重载,构造方法亦可以重载.而重写是在子类中可以定义与父类方法名,参数列表和返回类型都相同的方法,且重写的方法必须不能使用比被重写方法更严格的访问权限.
7.构造函数与c++相似,但是没有析构函数及拷贝构造等等...
8.必须使用new来创建对象,但是不必使用delete来释放,因为系统会自己回收.并且java中的数组也必须要用new才能创建出来,否则只会是null并且不会在堆中占有内存.
9.使用this关键字可以指向该对象本事,而使用super关键字则是指向该对象的父类.
10.使用static声明的变量和方法都是静态的,无论实例化对象几次,在内存中只会存在一份.static变量时公用变量,会在第一使用的时候被初始化,只后使用的也都会一直是它.而static方法在类中只能访问static成员变量,不可以访问非static成员变量.
11.package可以将当前文件指定在某个目录下,类似于c++中的命名空间,可以有效的避免重名的问题.使用import可以访问包中的内容,值得注意的是,包所写的有几层,就必须将class文件放在几层目录下面.
12.j2sdk的一些主要包
- java.lang 包含一些java语言的核心类,如String、Math、Integer、System和Thread,提供常用功能
- java.awt 包含了构成抽象类的工具集(abstract window toolkits)的多个类,这些类被用来构建和管理应用程序的图形用户界面(GUI).
- java.applet 包含applet运行所需的一些类.
- java.net 包含执行与网络相关的操作类.
- java.io 包含能提供多种输入/输出功能的类.
- java.util 包含一些实用工具类,如定义系统特性,使用与日期日历相关的函数.
13.使用jar -cvf xx.jar *.*可以打包一些写好的类.
14.通过继承,子类可以拥有父类所有的成员变量和方法,但是无法访问父类的私有(private)成员变量和方法.
15.一个文件中只能有一个public类且类名必须要与文件名同名.当不写访问控制修饰符时,系统会默认为default,default类只可以被同一个包内部的类访问.
16.子类的构造过程中必须调用父类的构造方法.子类可以在自己的构造方法中使用super显示的地调用父类的构造方法,也可以用this调用本类中其他的构造方法,但是如果使用super调用父类的构造方法,则必须写在当前构造方法的第一行.如果子类没有调用父类的构造方法,则系统会默认调用父类的无参构造方法,但是如果父类中没有无参构造方法,则编译的时候会报错.
17.object类是所有java类的根基了(因为java是单继承).
- toString()方法,其返回值是String类型,描述当前对象的有关信息.可根据需求来自己重写.
- equals(object obj)方法,用来判断两个对象的引用是否指向的同一对象.
18.a instanceof b 用来判断对象a是否是类b的实例化.
19.子类的对象可以当做积累的对象来使用,称为向上转型(upcasting),反之则称为向下转型(downcasting).
20.final变量的值不能被改变,final的方法不能够被重写,final的类不能够被继承.
21.用abstract关键字来修饰一个类时,这个类叫抽象类,类中所有的方法都只需声明,而不用实现.并且抽象类不能被示例化.
22.异常时java提供用于处理错误的机制,error称为错误,是有java虚拟机跑出的,可以不对其做处理.exception是异常的父类,一般可以对其进行处理.Runtime Exception是一类特殊的异常,是经常发生的错误,一般不对其进行处理.
23.异常的结构如下:
try{
可能发生错误的语句
}catch{
可能发生的错误1
}catch{
可能发生的错误2
}... ...
finally{
不论语句有没有错误,都需要执行的代码
}
24.使用自定义的异常.
- 通过继承java.lang.Exception类声明自己的异常类.
- 在方法适当的位置生成自定义异常的实例,并throw语句抛出.
- 在方法的声明部分用thows语句声明该方法可能抛出的异常.
25.冲洗方法需要且只能抛出与原方法所抛出异常类型一致,或者不抛出异常.
26.数组必须用new运算符只会才能分配空间.
- java学习笔记(上)
- Java-面向对象(上) 学习笔记
- Java NIO学习笔记(上)
- java学习笔记多线程学习总结(上)
- Java多线程(全)学习笔记(上)
- JAVA学习笔记(5)对象和类(上)
- java虚拟机学习笔记之垃圾收集(上)
- java se学习笔记 反射机制(上)
- Java虚拟机学习笔记-第二章(上)
- Java入门第三季-学习笔记(上)
- Java学习笔记——Oracle(上)
- 【罗兰のJava学习笔记】第三天,字符串 (上)
- 平面上的地图搜索--Java学习笔记(四)
- 平面上的地图搜索--Java学习笔记(四)
- Java基础学习笔记——面向对象(上)
- Java 标准 I/O 流编程学习笔记(上)
- Linux操作系统上安装Java-学习笔记
- LESS学习笔记(上)
- Java中Comparator接口的用法
- SSDP 简单服务发现协议 .
- 1小时学会python
- 写一些关于数据库的东西
- 白盒测试不是测试,更不高级
- java学习笔记(上)
- Windows7下利用XRDP远程连接CentOS6.4
- GDB基础教程
- 揭开Socket编程的面纱
- Android源码 HTC one/M7 最新毒蛇ViperOne2.1.0/高级工具设置/完美root,精简/更多自定义,稳定,流畅ROM
- JAVA学习小结
- 频受红杉资本青睐,商业智能初创公司Birst靠的是什么?
- python中matplotlib绘图中文显示问题
- JDBC 连接 Oracle 11g Release 2