国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

JAVA(3)

2019-11-14 15:39:22
字體:
來源:轉載
供稿:網友

接口注意事項:

1.接口不能被實例化

2.接口中所有的方法都不能有主體  (不能有{ })

3.一個類可以實現多個接口

4.接口中可以有變量<但變量不能用PRivate和protected修飾>

附加:

接口中的變量,本質上都是static的,而且是final,不管加不加static修飾

java開發中,常把經常用的變量定義在接口中,作為全局變量使用。

<訪問形式:接口名.變量名>

5.一個接口不能繼承其他的類,但是可以繼承別的接口

 

 

 

抽象類中可以有實現了的方法

接口中的方法一個都不能被實現

 

接口中定義變量有特殊要求

 

接口語法:

  class  類名  implement  接口 {

          方法;

          變量;

   }

 

小結:

接口是更加抽象的抽象的類

抽象類里的方法可以有方法體

接口里的所有方法都沒有方法體

接口體現了程序設計的多態和高內聚低耦合的設計思想

 

package com.test4;public class Test{       public static void main(String[] args){     } }interface Fish{    public void swimming(); }  interface Bird{   public void fly(); }class Monkey{   int name;   public void jump()   {      System.out.println("ABC");    } }class LittleMonkey extends Monkey implement Fish,Bird{   public void swimming(){    }   public void fly(){   } }

java的繼承是單繼承(一個類最多只能有一個父類)

final-概念

final可以修飾變量或方

 

使用final可以避免被子類修改:

class Aaa{   //給方法用final修飾,表示不可以被修改,不可被覆蓋   final public void sendMes()   {      System.out.println("發送消息");    } }

final使用:

1.當不希望父類的某個方法被子類覆蓋(override)時,使用final關鍵字修飾

2.當不希望類的某個變量的值被修改,可以用final修飾 <final public void xxx()>

   如果一個變量是final,則必須賦初值,否則編譯不了

3.當不希望類被繼承時,可用final修飾 <final class xxx>

 

 

數組

一維數組

數組的必要性:

package com.test1;public class Demo5_1{      public static void main(String[] args){    //定義六個變量    //定義一個可以存放六個float類型的數組    float arr[]=new float[6];    //使用for循環賦值    //給數組的各個元素賦值    arr[0]=3;    arr[1]=5;    arr[2]=3.4f;    arr[3]=2;    arr[4]=50;        //算總體重[遍歷數組]    float all=0;    for(int i=0;i<6;i++)    {         all+=arr[i];     }      System.out.println("總體重是:"+all);   } }

對象數組的使用:

package com.test1;import java.io.*;public class Demo5_2{   public static void main(String[] args){      //定義一個可以存放四只狗的對象數組   Dog dog[]=new Dog[4];      //給各個狗賦初值      //從控制臺輸入每個狗的信息[alt+j]快捷鍵   InputStreamReader isr=new InputStreamReader(System.in);   BufferedReader br=new BufferedReader(isr);   for(int i=0;i<4;i++)   {      dog[i]=new Dog();      System.out.println("請輸入狗名");      //從控制臺讀取狗名      String name=br.readLine();      //將名字賦給對象       dogs[i].setName(name);       System.out.println("");       String s_weight=br.readLine();       float weight=Float.parseFloat(s_weight);       //將名字賦給對象       dog[i].setWeight(weight);    }     //計算平均體重     //計算總體重     for(int i=0;i<4;i++)    {      allWeight+=dogs[i].getWeight();     }     //計算平均體重     float avgWeight/dogs.length;     System.out.println("總體重="+allWeight+"平均="+avgWeight)   } }//定義一個狗類class Dog{    private String name;    private float weight;    public String getName(){      return name;    }    public void setName(String name){       this.name=name;    }    public float getWeight(){       return weight;    }    public void setWeight(float weight){       this.age=weight;    }    }

排序分類:

1、內部排序:

(交換式排序法、選擇式排序法、插入式排序法)

2、外部排序法:

(合并排序法、直接合并排序法)

交換式排序法:冒泡排序法、快速排序法

 

冒泡排序:

package com.test1;public class Demo5_3{   public static void main(String[] args){     int arr[]={1,6,0,-1,9};   //排序   //外層循環,它決定一共走幾趟   for(int i=0;i<arr.length-1;i++)   {    //內層循環,逐個比較,若前大于后則交換     for(int j=0;j<arr.length-1-i;j++)     {       if(arr[j]>arr[j+1])        {           //換位           temp=arr[j];           arr[j]=arr[j+1];           arr[j+1]=temp;         }   }} //輸出最后結果   for(int i=0;i<arr.length;i++)   {      System.out.print(arr[i]+"");   }  排序方法封裝到類中:class Bubble{    //排序方法   public void sort(int arr[])   {     int temp=0;     for(int i=0;i<arr.length-1;i++)     {       for(arr[j]>arr[j+1])       {           temp=arr[j];           arr[j]=arr[j+1];           arr[j+1]=temp;        }     } }

調用:Bubble bubble=new Bubble();

           bubble.sort(arr);

選擇排序法:

class Select{   //選擇排序   public void sort(int arr[])   {     //默認第一個數最小         for(int j=0;j<arr.length-1;j++)     {       int min=arr[j];       //記錄最小數下標       int minIndxe=j;       for(int k=j+1;k<arr.length;k++)       {          if(min>arr[k])          {            //修改最小             min=arr[k];             minIndxe=k;            }         } }

插入式排序

將n個待排序的元素看成一個有序表和一個無序表,開始時有序表中只包含一個元素,無序表中有n-1個元素

class InsertSort{   //插入排序方法   public void sort(int arr[])   {       for(int i=1;i<arr.length;i++)      {         int insertVal=arr[i];         //insertVal準備和前一個數比較         int index=i-1;         while(index>=0&&insertVal<arr[index])                    //將arr[index]向后移動           arr[index+1]=arr[index];           //讓index向前移動           index--;          }           //將insertVal插入到適當位置           arr[index+1]=insertVal;    }  }

多維數組

定義:

 類型 數組名[][]=new 類型[大小][大小]

package com.test1;public class Demo5_5{      public static void main(String[] args)        int a[][]=new int[4][6];        a[1][2]=1;    a[2][1]=2;    a[2][3]=3;      //將圖形輸出    for(int i=0;i<4;i++)    {       for(int j=0;j<6;j++)       {         System.out.print(a[j]+"");        }        //換行        System.out.println();        } }

二進制(原碼、反碼、補碼):

1、二進制的最高位是符號位:0表示正數,1表示負數

2、正數的原碼、反碼、補碼都一樣

3、負數的反碼=符號位不變,其他位取反

4、負數的補碼=他的反碼+1

5、0的反碼、補碼都是0

6、java沒有無符號數

7、在計算機運算時候,都是以補碼的方式來運算的

 

算數右移:地位溢出,符號位不變,并用符號位補溢出的高位

算數左移:符號位不變,低位補0

 

 

 

集合:

 

java集合類主要有以下幾種:

1、List結構的集合類

 ArrayList類,LinkedList類,Vector類,Stack類

2、Map結構的集合類

 HashMap類,Hashtable類

3、Set結構的集合類

 HashSet類,TreeSet類

4、Queue結構的集合

 Queue接口

 

java集合的用法:

package com.test1;import java.util.*;public class Demo7{   public static void main(String[] args){      //定義ArrayList對象   ArrayList a1=new ArrayList();   //顯示大小   System.out.println("al大小:"al.size());   }}

 

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 高邑县| 巴南区| 乐平市| 扬州市| 牟定县| 贵港市| 南昌市| 岳阳县| 淳安县| 仁布县| 日喀则市| 涞水县| 泌阳县| 临颍县| 河曲县| 高密市| 长阳| 巴林左旗| 平顺县| 津市市| 全南县| 苏尼特右旗| 遵化市| 教育| 泉州市| 资中县| 马关县| 长兴县| 南木林县| 永德县| 修水县| 龙游县| 黎平县| 五常市| 水城县| 贵定县| 云龙县| 衡南县| 焦作市| 莆田市| 碌曲县|