Java学习笔记之类的、static关键字、访问权限

以下是博主学java的时候记的一些笔记,分享给大家,如果有错误或者以为的话,可以在下方留言


类的声明:

class 类名{

     类体的内容

}

注意:如果类名使用的是拉丁字母的话,首字母要大写,如Hello,Time;

    类名最好容易识别,见明知意。当几个单词复合时,每个单词的首字母大写,如BeijingTime

成员变量和局部变量:

在变量声明部分声明的变量是类的成员变量,在方法体中声明的变量叫局部变量。

例:

<span style="font-size:18px;">class People{

        int boy;                //成员变量

            Float a[];                  

            void f(){

                boolean cool;       //局部变量

                Student zhangboy;   //zhangboy 叫做对象

         }

     }

        class  Student{

              double x;

}</span>


成员变量在整个类内都有效,局部变量只在声明他的方法内有效;

成员变量的隐藏:

例:

<span style="font-size:18px;">class 三角形{

      float sA,sB,sC,length;

      void setSide(float sA,float sB,float sC){

            this.sA=sA;

            this.sB=sB;

            this.sC=sC;

         }

   }</span>


   个人理解:

   如果不加this,系统编译时会报错;

方法:

声明: 方法声明的部分{             例: float  area{

            方法的内容                  int a;

       }                               }

注意: 当一个方法不需要返回数据时,返回类型必须是void;

对象:

声明:类的名字  对象的名字;

     例:People  zhangPing;

        zhangPing=new People();     //申请内存;

或者:People zhangPing=new People();

对象操作自己的变量或者调用类中的方法的方法都是

对象.变量或对象.方法;

不可以向一个int型参数传递float型的值,相反就可以;

也就是说可以由低精度向高精度传值;

可变参数:

形式: public void f(int ...x)

作用:可以向f()方法中传不确定的值,不会报错。

例:

<span style="font-size:18px;">public class Computer{

       public double getResult(double a,int ...x){

           double result= 0;

           int sum=0;

           for(int i=;i<x.length;i++){

               Sum+=x[i];

           }

           result=a*sum;

           return result;

       }

   }

public class Example_6{

   public static void main(String []args){

       Computer computer=new Computer();

       double result=computer.getResult(1./3,10,20,30);

       System.out.println(“三数的平均数是:”+result);                        result=computer.getResult(1.0/6,66,12,5,89,2,51);

       System.out.println(“六数的平均数是:”+result);

     }

}</span>


static关键字:

     实例变量和类变量(静态变量):

     类变量:在类变量被定义时就已经分配了内存空间了,而且类变量的内存是所有对象共享的,还可以直接用类名访问。

     实例变量:实例变量只和相应的对象有关,不能用类名直接访问。

     类方法和实例方法:

     类方法:类方法只能对类变量进行操作。

     实例方法:实例方法既可以对实例方法进行操作,也可以对类变量进行操作,实例方法可以调用其他方法,包括类方法,但类方法只能调用类方法,别的不能调用。

  例:

<span style="font-size:18px;">class A{

         float a,b;

         void sum(float x,float y){

             a=max(x,y);                     //合法

             b=max(x,y);                     //合法

             System.out.println(a+b);

      }

      static float getMaxSquare(float x,float y){

            return max(x,y)*max(x,y);        //合法

      }

      static float getMinSquare(float x,float y){

            return min(x,y)*min(x,y);        //非法

      }

      static float max(float x,float y){    //类方法

            return x>y?x:y;                

  }

  float min(float x,float y){           //实例方法

        return x<y?x:y;            

  }</span>


访问权限:

   私有变量和私有方法:

   如果Tom是某个私有的类方法或者类变量,在另一个类中,也不能通过Tom来调用这个类方法或者操作这个类变量。

   对于私有成员变量或方法,只有在本类中创建该类的对象时,这个对象才能访问自己的私有变量和类中的私有方法。

   例:

<span style="font-size:18px;">class AAA{
          private int money;

          private int getMoney(){

              return money;

          }

          public static void main(String []args){

              AAA exa=new AAA();

              xxa.money=300;

              int m=exa.getMoney();

              System.out.println(“money=”+m);

        }                                  //正确

   

 

以下是错误代码:

        class AAA{
          private int money;

          private int getMoney(){

              return money;

          }

        class E{

          public static void main(String []args){

              AAA exa=new AAA();          //不在AAA类中

              xxa.money=300;             //非法

              int m=exa.getMoney();      //非法

              System.out.println(“money=”+m);

          }

      }               </span>


   共有变量和共有方法:

   被public修饰的成员变量或方法是共有的。可以相互之间调用,修改。

   友好变量和友好方法:

   不被public、private、projected修饰的就是友好变量和方法。

 

注意:不能用protected和private修饰类。

     访问权限修饰符按从高到低的顺序依次是public、protect、private.

   受保护的变量和方法:

。。。。

   

  通过一个例子来了解几个用法:

  public static boolean isDigit(char ch);如果ch是数字字 符,返回ture,否则返回false.

  public static boolean isLetter(char ch);如果ch是字母字符,返回ture,否则返回false.

  public static boolean isLetterOrDisit(char ch);如果ch是字母字符或数字字符,返回ture,否则返回false.

  public static boolean isLowerCase(char ch);如果ch是小写字母,返回ture,否则返回false.

  public static boolean isUpperCase(char ch);如果ch是大写字母,返回ture,否则返回false.

  public static char toLowerCase(char ch);返回ch的小写形式.

  public static char toUpperCase(char ch);返回ch的大写形式.

  public static boolean isSpaceChar(char ch);如果ch是空格返回ture.

例:

<span style="font-size:18px;"> public class Example_7{

public static void main(String []args){

    char []a={‘a’,’b’,’c’,’D’,’E’,’F’};

     for(int i=0;i<a.length;i++){

         if(Character.isLowerCase(a[i])){

            a[i]=Character.toUpperCase(a[i]);

         }

         else if(Character.isUpperCase(a[i])){

            a[i]=Character.toLowerCase(a[i]);

         }

     }

     for(int i:a){

         System.out.println(i);

     }

  }

}</span>


 


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值