java 基础总结
2015-07-15 21:21
513 查看
一、注释
1、 /* 多行注释 */
2、// 单行注释
二、数据类型
1、基本数据类型 :
字节型(byte 1字节)、短整型(short 2字节)、整型(int
4 字节)、长整型(long 8 字节)、
字符型(char 2 字节)、浮点型(float 4
字节)、双精度型(double 8字节)、布尔型(boolean 1字节)
注意:与 c++ 不同的是 java 中 long 为8字节,char 为2字节
2、数组
java 中得数组工作原理与 c++ 不同,java中数组定义格式为
多维数组
三、运算
1、java 中得运算符和 c++ 差不多,除了以下几个:
1.1 模运算
模运算符: % 在java 中 模运算可以是整数也可以是浮点数,不像c++只可以是整数。
1.2 逻辑运算
在 java 中有 逻辑与( & )、逻辑或( | )、短路与 ( && )、短路或 ( || )。
在c++中得逻辑与就相当于 java 中得 短路与,特点为当 运算的第一个值为 false 时就不会运算第二个值了,直接返回false,只有当第一个值为true才会运算第二个值。
而java中得逻辑与(&)不管怎么样都会将两个值都运算了再返回运算结果。
四、控制语句
1、条件语句
java 与c++一样也有 if 语句、switch 语句 用法一样。
2、循环语句
java 与 c++ 一样有 while、do while、for 三种循环语句,且用法一样。
3、跳转语句
java 与 c++ 一样有 break、continue、return 用法也一样。
五、类
1、定义格式
在java中类成员的访问限制为 public
2、抽象类
抽象类像c++中一样,只是定义接口的形式,由继承的子类实现。并且抽象类不可实例化。
六、包和接口
1、在文件开头 用 package level1.level2.packageName; 定义文件所属的包。包用 “ . ” 分层。
2、导入包在文件头用 import packageName;
3、接口定义( 接口用于抽象一个类的接口)
4、接口继承
七、异常
1、捕获异常
2、释放异常
2.1、throw ExceptionType;
2.2、如果一个方法会导致一个异常但是自己不会处理,则需要在声明方法的时候指定这个异常
3、自定义异常类,只要自己定义一个类 继承自 Exception 即可,(Exception 也是继承自 Throwable )
八、特殊
1、final
变量可以声明为 final 这样就可以阻止变量被修改,相当于c++中得const
类也可以声明为 final 表示类不可被继承了。
九、多线程
1、创建线程
1.1 方法一(实现 Runnable 接口)
2.1 同步方法一,使用同步方法
2.2 同步方法二,同步语句
1、 /* 多行注释 */
2、// 单行注释
二、数据类型
1、基本数据类型 :
字节型(byte 1字节)、短整型(short 2字节)、整型(int
4 字节)、长整型(long 8 字节)、
字符型(char 2 字节)、浮点型(float 4
字节)、双精度型(double 8字节)、布尔型(boolean 1字节)
注意:与 c++ 不同的是 java 中 long 为8字节,char 为2字节
2、数组
java 中得数组工作原理与 c++ 不同,java中数组定义格式为
int varname[];如上定义的数组还是空的,必须通过 new 关键字初始化, 或直接赋值。
int varname[] = new int[10]; int varname1[] = {1, 2, 3, 4 };
多维数组
int varname[][] = new int[4][5];
三、运算
1、java 中得运算符和 c++ 差不多,除了以下几个:
1.1 模运算
模运算符: % 在java 中 模运算可以是整数也可以是浮点数,不像c++只可以是整数。
int x = 42; double y = 42.25; System.out.println("x mod 10 = " + x % 10); System.out.println("y mod 10 = " + y % 10); //java 中浮点数也是合法的。
1.2 逻辑运算
在 java 中有 逻辑与( & )、逻辑或( | )、短路与 ( && )、短路或 ( || )。
在c++中得逻辑与就相当于 java 中得 短路与,特点为当 运算的第一个值为 false 时就不会运算第二个值了,直接返回false,只有当第一个值为true才会运算第二个值。
而java中得逻辑与(&)不管怎么样都会将两个值都运算了再返回运算结果。
四、控制语句
1、条件语句
java 与c++一样也有 if 语句、switch 语句 用法一样。
2、循环语句
java 与 c++ 一样有 while、do while、for 三种循环语句,且用法一样。
3、跳转语句
java 与 c++ 一样有 break、continue、return 用法也一样。
五、类
1、定义格式
public/private/protected class className [ extends parentClass ] { [static] public/private/protected type varname; [static] public/private/protected retype funcname () { } }
在java中类成员的访问限制为 public
2、抽象类
抽象类像c++中一样,只是定义接口的形式,由继承的子类实现。并且抽象类不可实例化。
abstract class className { abstract rettype funcname(); }
六、包和接口
1、在文件开头 用 package level1.level2.packageName; 定义文件所属的包。包用 “ . ” 分层。
2、导入包在文件头用 import packageName;
3、接口定义( 接口用于抽象一个类的接口)
access interface name{ // access 要么为 public 要么为空 接口函数定义; }
4、接口继承
access class className implements interface [, interface … ] { // access 要么为 public 要么为空 //class-body }
七、异常
1、捕获异常
try{ //block of code to monitor for errors }catch( ExceptionType1 exOb ){ //exception handler }catch( ExceptionType2 exOb){ //exception handler }finally{ // block of code to be excited before try block end. // 不管有没有异常发生都始终会最终执行 }
2、释放异常
2.1、throw ExceptionType;
2.2、如果一个方法会导致一个异常但是自己不会处理,则需要在声明方法的时候指定这个异常
type method-name( paramter-list ) throws exception-list { //body of method }
3、自定义异常类,只要自己定义一个类 继承自 Exception 即可,(Exception 也是继承自 Throwable )
八、特殊
1、final
变量可以声明为 final 这样就可以阻止变量被修改,相当于c++中得const
类也可以声明为 final 表示类不可被继承了。
九、多线程
1、创建线程
1.1 方法一(实现 Runnable 接口)
class MyThread implements Runnable{ Thread t; MyThread() { t = new Thread(this, "Demo Thread"); System.out.println("Child thread:" + t); t.start(); } public void run() { // TODO Auto-generated method stub } }1.2 方法二 (继承 Thread )
class MyThread extends Thread{ MyThread(){ super("Demo Thread"); start(); //开始线程 } public void run(){ // TODO Auto-generated method stub } }2、线程同步( java 中线程同步通过管程 也叫信号量 )
2.1 同步方法一,使用同步方法
synchronized rettype methodname (paramter-list){ //method body }通过同步方法可以使调用这个对象的这个方法时会互斥,当一个线程在调用时,其它线程必须等待他结束才能调用。
2.2 同步方法二,同步语句
synchronized(obj){ // 同步语句 }通过同步语句可以保护 obj 对象的方法调用是互斥的。
相关文章推荐
- Android 软件开发之如何使用Eclipse Debug调试程序详解
- 10种简单的Java性能优化
- 直接选择排序法
- Java基础学习之多线程
- Java静态字段(属性、方法、类别)
- 使用springMVC的详细步骤 SpringMVC与Struts2对比
- Java值传递以及引用的传递、数组的传递!!
- java EE之jsp注释、声明以及输出jsp表达式 复习
- struts.xml配置文件标签详解
- 基於Java的元胞自动机Cellular Automaton
- 冒泡方排序
- Eclipse常见操作
- 关于java读取properties文件的路径问题
- 解决Eclipse界面无法显示出LogCat或Console等窗口的问题
- 【转】Java常量池详解
- Java List 元素删除陷阱
- JAVA基本语法--java的数据类型
- Java 截取字符串
- Java while 和 for 的区别
- 【转】java内存分配和String类型的深度解析