java 基础总结

一、注释

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 

java 访问限制

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 对象的方法调用是互斥的。


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值