1.在同一个类中:创建的对象,不管成员的可见修饰符可以直接调用。
package studentpackage;
public class Student {
public long id;
protected String name;
private char sex;
int age; public String toString() {
return id + name + sex + age;
} public static void main(String args[]) {
Student s1 = new Student();
s1.id = 20110010l;
s1.name = "zhangshan";
s1.sex = 'M';
s1.age = 20;
System.out.println(s1);
}
}
2.在同一个包中不同类中的可见性:私有不可见,其它都可见
//程序名为Student.java
package studentpackage;
public class Student {
public long id;
protected String name;
private char sex;
int age; public String toString() {
return id + name + sex + age;
} //程序名为TestStudent.java
package studentpackage;
public class TestStudent {
public static void main(String[] args) {
Student s1=new Student();
s1.id = 20110010l;
s1.name = "zhangshan";
s1.sex = 'M';
s1.age = 20;
System.out.println(s1);
}
} 3.在不同的包中:先注意类的可见性,可见后只有public成员可见
//程序名为Student.java
package studentpackage;
public class Student {
public long id;
protected String name;
private char sex;
int age; public String toString() {
return id + name + sex + age;
} //程序名为 XueYuan.java
package studentpackage;
class XueYuan {
Long xyid;
String xyName;
String xyweizhi;
public XueYuan() {
} public XueYuan(Long xyid, String xyName, String xyweizhi) {
super();
this.xyid = xyid;
this.xyName = xyName;
this.xyweizhi = xyweizhi;
} public String toString() {
return xyid + xyName + xyweizhi;
}
} //程序名为TestStudent_xueyuan.java
package teststudentpackage;
import studentpackage.*;
public class TestStudent_xueyuan {
public static void main(String[] args) {
Student s1=new Student();
s1.id = 20110010l;
s1.name = "zhangshan";
s1.sex = 'M';
s1.age = 20;
System.out.println(s1);
XueYuan xy1=new XueYuan();//注意是否可行
}
}

Java学习——包及可见性的更多相关文章

  1. Java学习-039-源码 jar 包的二次开发扩展实例(源码修改)

    最近在使用已有的一些 jar 包时,发现有些 jar 包中的一些方法无法满足自己的一些需求,例如返回固定的格式,字符串处理等等,因而需要对原有 jar 文件中对应的 class 文件进行二次开发扩展, ...

  2. java concurrent包的学习(转)

    java concurrent包的学习(转) http://my.oschina.net/adwangxiao/blog/110188 我们都知道,在JDK1.5之前,Java中要进行业务并发时,通常 ...

  3. Java 学习(14):接口 & 包(设置 CLASSPATH 系统变量)

    Java 接口(英文:Interface) 定义:在JAVA编程语言中,接口是一个抽象类型,是抽象方法的集合,接口通常以 interface 来声明. 一个类通过继承接口的方式,从而来继承接口的抽象方 ...

  4. [Java学习] 再谈Java包

    在Java中,为了组织代码的方便,可以将功能相似的类放到一个文件夹内,这个文件夹,就叫做包. 包不但可以包含类,还可以包含接口和其他的包. 目录以"\"来表示层级关系,例如 E:\ ...

  5. Java学习笔记三十一:Java 包(package)

    Java 包(package) 一:包的作用: 如果我们在使用eclipse等工具创建Java工程的时候,经常会创建包,那么,这个包是什么呢. 为了更好地组织类,Java 提供了包机制,用于区别类名的 ...

  6. Java学习(匿名对象、内部类、包、import、代码块)

    一.匿名对象 概念:匿名对象是指在创建对象时,只有创建的语句,却没有把对象地址值赋给某个变量. 特点: (1)匿名对象直接使用,没有变量名.当做形参使用. new Person().name=&quo ...

  7. java.lang包学习(转自微学苑)

    Java语言包(java.lang)定义了Java中的大多数基本类,由Java语言自动调用,不需要显示声明.该包中包含了Object类,Object类是整个类层次结构的根结点,同时还定义了基本数据类型 ...

  8. Java学习笔记-包,classpath,import,jar

    这里介绍Java的包,classpath,import和jar 包(package) 对类文件进行分类管理 给类提供多层命名空间 写在程序文件的第一行 类名的全称的是 包名.类名 包也是一种封装形式 ...

  9. java.time包常用类API学习记录

    Java8出来已那么多年了,java.time包之前一直没有使用过,最近正好有用到,在此做个记录. 上图列出了java.time包下的类,接下来我们详细看下其中每个类的用法. Clock:获取到当前时 ...

随机推荐

  1. Quick Noodle Physics in Blender Tutorial

    https://www.youtube.com/watch?v=Lg7jxAMs60QQuick Noodle Physics in Blender Tutorial 新增平面Plane作为地面; 新 ...

  2. YIT-CTF—Web

    一:背后 打开传送门——>查看网页源代码——>1b0679be72ad976ad5d491ad57a5eec0——>用MD5解密 二:一种编码 [][(![]+[])[+[]]+([ ...

  3. 两道dp

    链接:https://ac.nowcoder.com/acm/contest/186/C?&headNav=www 来源:牛客网终于Alice走出了大魔王的陷阱,可是现在傻傻的她忘了带武器了, ...

  4. EnableAutoConfiguration注解的工作原理(org.springframework.boot.autoconfigure.EnableAutoConfiguration=core.bean.MyConfig)

    EnableAutoConfiguration注解的工作原理(org.springframework.boot.autoconfigure.EnableAutoConfiguration=core.b ...

  5. CTEX(LaTeX) 编译 中文

    CTEX 中文编码&编译问题 #win10 tex 文档为 GBK 编码 https://zhidao.baidu.com/question/93645685.html \documentcl ...

  6. goland 文件头注释

    打开GoLand的setting选项 依次选择Editor,CodeStyle ,File and Code Templates ,Go File 根据自己需要添加即可 /* @Time : ${DA ...

  7. mysql中文编码问题

    我比较推荐的方法是在创建数据库时便设置中文编码 create database bp default character set utf8; #注意是utf8不是utf-8 以下方法只适用于mysql ...

  8. Java多线程知识总结(一)

    一.创建线程的三种方式: 创建线程的方式有三种,一是创建Thread实例,二是实现Runnable接口,三是实现Callable接口,Runnable接口和Callable接口的区别是一个无返回值,一 ...

  9. tomcat源码阅读之默认连接器

    默认连接器 一.UML图: 1.所有的连接器都要实现Connector接口,必须创建Request对象和Response对象,httpConnector作为默认连接器,肯定也是要实现Connector ...

  10. thinkphp5 列表页数据分页查询2-带搜索条件

    一.控制器部分 <?php namespace app\user\controller; use app\index\controller\Common; use app\user\model\ ...