文档章节

关于java的4种访问修饰符

百曉生
 百曉生
发布于 2016/01/29 16:40
字数 566
阅读 143
收藏 0

         java中,访问修饰符有以下几种,publicprotected、默认和private,它们的使用情况如下:

下面举例说明(重要的说明在代码的注释中)。

1

/*
 * 作者:百曉生
 * 日期:2016年1月29日
 * 功能:访问修饰符在不同类中的使用情况
 * */
public class Test {
   public static void main(String[] args) {
      Student std1 = new Student();
      std1.num = 1;
      std1.name = "叶修";
      std1.age = 25;
      //std1.sex = '男'; //private的属性(变量)或方法(函数)只能在其定义的本类中使用
      
      std1.eat();
      std1.speak();
      std1.run();
      //std1.jump();  //理由同12行
   }
}
 
class Student {
   public int num;
   protected String name;
   int age;
   private char sex;
   
   public void eat() {}
   protected void speak() {}
   void run() {}
   private void jump() {}
}


2(Test.javapkg1包中,Student.javapkg2包中)

Test.java:

/*
 * 作者:百曉生
 * 日期:2016年1月29日
 * 功能:访问修饰符在不同包中的使用情况
 * */
package pkg1;
 
import pkg2.Student;
 
public class Test {
   public static void main(String[] args) {
      Student std1 = new Student();
      std1.num = 1;
      //std1.name = "叶修"; //当Student类在另一个包中时,可以发现除了public外,其它的属性或方法都无法直接使用
      //std1.age = 25;
      //std1.sex = '男'; //private的属性(变量)或方法(函数)只能在其定义的本类中使用
      
      std1.eat();
      //std1.speak();
      //std1.run();
      //std1.jump();  //理由同14行
   }
}

Student.java:

package pkg2;
 
public class Student {
   public int num;
   protected String name;
   int age;
   private char sex;
   
   public void eat() {}
   protected void speak() {}
   void run() {}
   private void jump() {}
}


3

Test.java

/*
 * 作者:百曉生
 * 日期:2016年1月29日
 * 功能:访问修饰符在子类中的使用情况
 * */
package pkg;
 
import pkg1.College_student;
 
public class Test {
   public static void main(String[] args) {
      College_student cstd1 = new College_student();
      cstd1.num = 101;
      cstd1.name = "苏沐秋"; /*这里需要指出的是,当在同一个包下时,protected和默认修饰符的功能是一致的;
                             只有当子类和父类不在同一个包中时,才可以发现着两种修饰符的区别*/
      //cstd1.age = 25;
      //cstd1.sex();
      
      cstd1.eat();
      cstd1.speak();
      //cstd1.run();
      //cstd1.jump();
   }
}

Student.java

package pkg;
 
public class Student {
   public int num;
   protected String name;
   int age;
   private char sex;
   
   public void eat() {}
   protected void speak() {}
   void run() {}
   private void jump() {}
}

pkg1包中的College_student.java

package pkg1;
 
import pkg.Student;
 
public class College_student extends Student{
}


所有代码均在win7系统下jdk1.7eclipse下运行通过。

© 著作权归作者所有

共有 人打赏支持
百曉生
粉丝 0
博文 1
码字总数 566
作品 0
海淀
程序员
私信 提问
java基础一(第一个java程序、数据类型、访问控制、static、)

一、第一个java程序 public class HelloWord {//public访问修饰符 class关键字,声明为类 HelloWord类名 //public访问修饰符 static关键字 void表示无返回值 main程序入口 } 二、数据类型 Ja...

废柴
02/11
0
0
java的接口、类、属性、方法各有哪些修饰符

参考博客:http://blog.csdn.net/cao_tao199612/article/details/7458245 1、 接口的修饰符只有:public 2、 类的修饰符分为:可访问控制符和非访问控制符两种。 可访问控制符是:公共类修饰符...

yong230
2014/08/04
0
0
Java入门学习之java变量简析 java编程

在Java语言中,所有的变量在使用前必须声明。声明变量的基本格式如下: type identifier [ = value][, identifier [= value] ...] ; Java语言支持的变量类型有3种:1、类变量:独立于方法之外...

老男孩Linux培训
05/29
0
0
关于Spring Aop存在的一点问题的思考

在本人前面的文章Spring Aop原理之切点表达式解析中讲解了Spring是如何解析切点表达式的,在分析源码的时候,出现了如下将要讲述的问题,我认为是不合理的,后来本人单纯使用aspectj进行试验...

爱宝贝丶
08/19
0
0
10个经典的 Java main 方法面试题

以下是笔者认为比较经典的关于Java main方法的面试题,与其说是Java面试题,其实也是Java的一些最基础知识问题,分享给大家,如有错误,请指出。 很多小伙伴都喜欢在网上寻找教程,这种学习的...

紫魅编程
2016/04/23
379
0

没有更多内容

加载失败,请刷新页面

加载更多

EOS docker开发环境

使用eos docker镜像是部署本地EOS开发环境的最轻松愉快的方法。使用官方提供的eos docker镜像,你可以快速建立一个eos开发环境,可以迅速启动开发节点和钱包服务器、创建账户、编写智能合约....

汇智网教程
今天
7
0
《唐史原来超有趣》的读后感优秀范文3700字

《唐史原来超有趣》的读后感优秀范文3700字: 作者:花若离。我今天分享的内容《唐史原来超有趣》这本书的读后感,我将这本书看了一遍之后就束之高阁了,不过里面的内容一直在在脑海中回放,...

原创小博客
今天
11
0
IC-CAD Methodology知识图谱

CAD (Computer Aided Design),计算机辅助设计,指利用计算机及其图形设备帮助设计人员进行设计工作,这个定义同样可以用来近似描述IC公司CAD工程师这个岗位的工作。 早期IC公司的CAD岗位最初...

李艳青1987
今天
13
0
CompletableFuture get方法一直阻塞或抛出TimeoutException

问题描述 最近刚刚上线的服务突然抛出大量的TimeoutException,查询后发现是使用了CompletableFuture,并且在执行future.get(5, TimeUnit.SECONDS);时抛出了TimeoutException异常,导致接口响...

xiaolyuh
今天
7
0
dubbo 搭建与使用

官网:http://dubbo.apache.org/en-us/ 一,安装监控中心(可以不安装) admin管理控制台,monitor监控中心 下载 bubbo ops 这个是新版的,需要node.js环境,我没有就用老版的了...

小兵胖胖
今天
15
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部