java基础 第八章(静态成员的调用 、 封装)
一、靜態成員的兩種調用。
? ? ?1. 對象.成員變量 = 值;
? ? ? ? ?例:stu1 . name = "java";
? ? ?2.類名.成員方式;? ?// 不需要new就可以直接用這種方式調用,調用方法也可以(Student . getNum())
? ? ? ? ?例:Student .count++;
? ? ? ? ?注:
? ? ? ? ? ? ? ?靜態方法只能訪問靜態變量,static只能訪問static。
? ? ? ? ? ? ? ?非靜態方法既能訪問靜態變量又能訪問非靜態變量。
? ? ? ? 例1:class Student{
? ? ? ? ? ? ? ? ? ? ? static int count;
? ? ? ? ? ? ? ? ? ? ? public int getNum(){? ?//非靜態方法既可以調用靜態變量也可以調用非靜態變量
? ? ? ? ? ? ? ? ? ? ? ? ? count++;
? ? ? ? ? ? ? ? ? ? ? ? ? return count;
? ? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ?}
? ? ? ? ? ? ? ? ?主程序調用必須先new出一個對象才可以調用(因為getNum()方法是非靜態的 所以它就不是共享的,要new出對象,用對象才可以調用)
? ? ? ? ? ? ? ? ?Student stu1 = new Student();
? ? ? ? ? ? ? ? ?int count1 = stu1.getNum();
? ? ? ? ?例2:class Student{
? ? ? ? ? ? ? ? ? ? ? ?static int count;
? ? ? ? ? ? ? ? ? ? ? ?public static int getNum(){
? ? ? ? ? ? ? ? ? ? ? ? ? ?count++;
? ? ? ? ? ? ? ? ? ? ? ? ? ?return count;
? ? ? ? ? ? ? ? ? ? ? ?}
? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ?主程序調用? int count2 = Student.getNum();
二、靜態塊。
? ? static{
?
? ? }
? ? 靜態塊只能加載并運行一次,最先執行。
? ?例:class Student{
? ? ? ? ? ? ? public static int count;
? ? ? ? ? ? ? static{
? ? ? ? ? ? ? ? ? ?count++;
? ? ? ? ? ? ? }
? ? ? ? ? ? ? public void studentNum(){
? ? ? ? ? ? ? ? ? ?System.out.println(count);
? ? ? ? ? ? ? }
? ? ? ? ? }
? ? ? ? ?主程序調用:new Student().studentNum(); // 1
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?new Student().studentNum(); // 1
三、封裝。
? ? 1.封裝代碼的功能:
? ? ? ?只對外界提供一個名字,讓外界能訪問這些屬性或者功能。
? ? 2. 例:銀行的安全
? ? ? ? class creditCard{
? ? ? ? ? ? private double salary; // 外界訪問不到salary,封裝了
? ? ? ? ? ? public double getSalary(){
? ? ? ? ? ? ? ? return salary;
? ? ? ? ? ? }
? ? ? ? ? ?public void setSalary(double sal){
? ? ? ? ? ? ? ?if(sal <= 0){
? ? ? ? ? ? ? ? ? ?return 0.0;
? ? ? ? ? ? ? ?}else{
? ? ? ? ? ? ? ? ? ? ? ? salary = sal;
? ? ? ? ? ? ? ?}
? ? ? ? ? ? ? return salary;
? ? ? ? ? ?}
? ? ? ? }
? ? ? ? public class money{
? ? ? ? ? ? public static void main(String[] args){
? ? ? ? ? ? ? ? creditCard cc = new creditCard();
? ? ? ? ? ? ? ? cc.setSalary(100000000);
? ? ? ? ? ? ? ? double salary = cc.getSalary();
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? 注:private 私有,只有自己擁有,外界訪問不到。
?
轉載于:https://www.cnblogs.com/catcoffer/p/8993876.html
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的java基础 第八章(静态成员的调用 、 封装)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【.NET架构】BIM软件架构02:We
- 下一篇: android 开发环境 配置和说明