Java基础_05
2019獨角獸企業重金招聘Python工程師標準>>>
1:boolean運算符號
|| 與 |? &&? 與? &的區別。
Equals與innstanceof
1:java中的方法。方法的定義,參數、返回值、調用方式。
2:方法調用與參數傳遞、Static方法與非static方法。
3:權限修飾符號與import關鍵字的使用及系統的默認包。
3:作業:實現ATM機命令行程序。
4:調用另一個包中的類及import關鍵字及權限修飾符號。
1:回顧
? 1:數據類型 – 8種基本的 byte,char,short,int ,long.float ,double Boolean – 及它們的默認值 – 只有成員變量才會有默認值。
? 2:變量根據聲明的位置:
???? 成員變量。
???? 局部變量。
?????? 只要是在方法里面的都是局部的變量。
????????? class One{
????????????? public void say(String name,int age){? //參數變量也是局部變量
???????????????? int money = 90; //局部
???????????????? if(true){
??????? ???????????int salary = 8990;
???????????????? }
???????????? }
}
成員變量:
???? 靜態變量 – static修飾 的變量? -? 內存中只有一份copy。
???? 實例變量- 沒有使用static關鍵 – 在內存中存在多份
3:控制語句
?? If,while,for,break,switch,contine,return
4:運算符號
???? + : 字符串的串聯,就是+。
???? 比較:
????????? == : 比較兩個對象的內存地址是否一樣。
????????? Equals : 比較兩個對象 (引用類型的變量)
???????????? Integer a = 909;
??????? ????? Integer b = 909;
??????? ????? boolean boo = a.equals(b);
2:||? vs? |
? && VS &
?
| ?和 &
?| 可以進行:數據運算,boolean
?
數據運算? : 二進制兩個值只有一個有為1就是1。
?? public class Demo01 {
??? @Test
??? public void test() {
??????? int a = 0b1010;
??????? int b = 0b0101;
??????? // 1111
??????? int c = a | b;
??????? System.err.println(c + "," + Integer.toBinaryString(c));
??????? // 如果使用的是 | boolean運算則說明兩邊的表達式,必須都在執行。
??????? boolean boo = frist() | second();
??????? System.err.println("3"+boo);
??? }
?
??? public boolean frist() {
??????? System.err.println("1前面運算了");
??????? return true;
??? }
???
??? public boolean second() {
??????? System.err.println("2后面也運算了");
??????? return false;
??? }
}
?
|| 只能進行boolean運算:
短路。如果前已經判斷為true.而后面不會再參與運算。
?
&
&&? - 兩個必須都是1 true才是true.
??????? int a = 0b0111;
??????? int b = 0b1011;
??????? int c = a & b;
??????? boolean boo = false && true;
??????? System.err.println(c);
3:在Java類中的方法 – 函數
函數 – 是一段代碼的集合。以后可以通過一個名稱來調用的一個代碼塊。
如:
? Main函數 main方法。
方法必須要定義在類里面:
?? 權限修飾符號[public , 默認,protected,private]?? [靜態修飾符號static ]? [最終修飾符號final]? 返回值類型? 方法名(形式參數類型 形式參數名,….){
???? //方法體。。。
?? }
1:從main方法中調用另一個靜態的方法
/**
??? ?* 這是main方法,用于程序的入口
??? ?* @param args
??? ?*/
??? public static void main(String[] args) {
??????? //直接輸入hi的名稱就可調用自己當前類中的其他的static方法
??????? System.err.println("1:in main method.. begin...");
??????? hi();
??????? System.err.println("3:after hi method over..");
??? }
??? public static void hi(){
??????? System.err.println("2 這是hi method...");
??? }
?
2:方法的參數
? 參數:??? 實參。?? 形參數。
3:參數的傳遞
4:傳遞引用類型
? 類型,數組[],
public class Demo03_Args {
??? public static void main(String[] args) {
??????? Integer age = 100;// 實參
??????? say(age);// 調用say傳遞aga參數
??????? System.err.println(age);//100
??? }
??? public static void say(Integer myage) {
??????? myage = 200;
??? }
}
5:更多的參數類型
??? public static void hi(String name){
???????
??? }
??? public static void hi2(String name,int age){
???????
??? }
?
主要在JDK1.5后出現的新的參數類型:
可變長參數:
?public class Demo03_Args {
??? public static void main(String[] args) {
??????? say();
??????? say("Jack");
??????? say("Jack","Mary","Alex","Mark");
??????? String[] str = new String[]{"張三","李四"};//數組
??????? say(str);
??? }
??? public static void say(String...nms){//可變參數,有0~N個String類型的參數,默認nms的類型是String[]
??????? System.err.println(nms.length);
??? }
}
在一個方法函數里面,可變長參數,只能有一個。且必須要所有參數的最后。
4:非靜態的方法
沒有static的方法就是非靜態的方法。
在static方法中,不能直接調用非靜態的方法。必須要先實例化當前包含了非靜態方法的類,才可以調用非靜態的方法。
package cn.demo;
public class Demo04_NoStaticMethod {
??? public static void main(String[] args) {
??????? //先實例化當前類
??????? Demo04_NoStaticMethod demo04 = new Demo04_NoStaticMethod();
??????? demo04.say();
??? }
??? // 非靜態的方法,也叫實例方法
??? public void say() {
??????? System.err.println("Hello");
??? }
}
靜態的方法:
在任意的方法里面,都可以直接調用。
非靜態的方法:
在靜態方法里面調用時,必須要先實例化這個對象。
在非靜態的方法里面可以直接調用。
5:方法的返回值
如果一個方法返回類型是void則里面可以沒有return關鍵字。
如果不是void,則里面必須要有return返回一個符合類型的值。
??? public static String good(){
??????? System.err.println("this is good...");
??????? return "Holl";
??? }
6:構造方法
構造方法是指與類名相同,但沒有返回值的方法,就是構造方法。
public class Demo04_NoStaticMethod {
??? public Demo04_NoStaticMethod() { //構造方法
??? }
構造方法的概念:“
1:所有類,默認都擁有構造方法。如果一個類用戶沒有聲明構造,則系統就給這個類設置一個默認的構造。
?? Public Xxxx(){…} – 空的構造。
2:構造方法不能顯示的調用。在實例化這個類時,即new Xxx()方法調用。
3:構造方法只執行一次。表示這個類開始實例化了。
4:構造方法可以有參數。當一個構造方法有參數時,必須在要new時傳遞參數。
5:構造方法不能是static,final。
?
轉載于:https://my.oschina.net/u/2354614/blog/541264
總結
- 上一篇: [实战]MVC5+EF6+MySql企业
- 下一篇: Linux使用jstat命令查看jvm的