栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java入门 面向对象(封装:导包、private修饰、static修饰、setget方法)(第十七天)(二)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java入门 面向对象(封装:导包、private修饰、static修饰、setget方法)(第十七天)(二)

修饰符: 类的访问修饰符:

    public修饰符:公有访问级别(在同一个类中,被不同修饰符修饰的属性或者方法,对象都可以直接使用)

    protected修饰符:被protected修饰的属性或方法不能被不同包里的类直接访问

    默认修饰符:包级私有访问级别(被默认修饰符修饰的类只能被同一个包里的其它类访问)

    private修饰符:被private修饰的属性或方法,只能在其所在的类里直接使用

注意:

一个Java文件里只能有一个public修饰的类,可以有多个默认修饰符修饰的类

private修饰符:(使用于封装)

   只能在类里面使用,被private修饰符修饰后,要想使用该类里的方法需要通过提供的方法(接口)使用 

static修饰符: static变量的作用:

        (1)能被类的所有实例共享,可作为实
           例之间进行交流的共享数据
        (2)如果类的所有实例都包含-一个相同
           的常量属性,可把这个属性定义为静
           态常:量类型,从而节省内存空间

static方法:

静态方法:可直接通过类名访问
     ■静态方法中不能使用this和super
     ■不能直接访问所属类的实例变量和实例方法
     ■可直接访问类的静态变量和静态方法
  实例方法:通过实例访问

     ■可直接访问所属类的静态变量、静态方法、实例变量和 实例方法

  静态方法必须被实现   main()就是最常用的静态方法  ( 必须被实现:指的是必须有方法体)

 在静态方法中不能使用this和super关键字,因为static是属于类的,不是属于某一个对象

static修饰符:

static可以用来修饰
        成员变量:
            静态变量,可以直接通过类名访问
        成员方法:
            静态方法,可以直接通过类名访问
        代码块:
            静态代码块,当Java虚拟机加载类时,就会执行该代码块 


static代码块:

    JVM加载类时,加载静态代码块
        1)如果有多个静态块,按顺序加载
        2)每个静态代码块只会被执行一次


类的成员变量包括:

    ■类变量(静态变量)
           ●被static修饰的变量
           ●在内存中只有一个拷贝
           ●类内部,可在任何方法内直接访问静态变量
           ●其他类中,可以直接通过类名访问
    ■实例变量
           ●没有被static修饰的变量
           ●每创建一个实例,就会为实例变量分配一次内存 ,实例变量可以在内存中有多个拷贝,互不影响

总结:

   综上所述:静态的只能访问静态的(变量、方法) ; 
   非静态的既可以访问静态的也可以访问非静态的(变量、方法)

代码例题:

类:

package cn.bdqn.demo11;

public class FinalStaticDemo01 {
	
	//定义常量
	final int NUM = 100;
	//常量值不能修改
//	NUM=200;
	
	//定义静态常量
	final static int NUMBER = 100;
	static final int TEST = 200;
	
	public static void main(String[] args) {
		System.out.println(FinalStaticDemo01.NUMBER);
		System.out.println(FinalStaticDemo01.TEST);
		
		System.out.println(Math.PI);
		
	}

}

 对象:

package cn.bdqn.demo10;

public class Demo01 {
	
	//定义变量
	//没有使用static使用的变量称之为实例变量
	int num1 =100;
	
	//使用static修饰的变量称之为类变量/静态变量,静态变量可以直接使用类名来调用
	static int num2 =1000;
	
	public static void main(String[] args) {
		//实例变量只属于其所在的对象,各个对象之间不影响
		Demo01 d1= new Demo01();
		System.out.println(d1.num1);//100
		d1.num1 = 200;
		System.out.println(d1.num1);//200
		
		System.out.println(d1.num2);//1000
		d1.num2 = 2000;
		System.out.println(d1.num2);//2000
		
		Demo01 d2 = new Demo01();
		System.out.println(d2.num1);//100
		d2.num1 = 500;
		System.out.println(d2.num1);//500
		//使用static修饰的变量被对多个对象公用,一个对象对变量进行操作会影响另一个对象使用该数据
		System.out.println(d2.num2);//2000
		
	}
	

}
set、get方法:

在封装中要使用set、get方法留可供使用的方法(类似手机留接口,可以插数据线、耳机等)

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1036746.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号