A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 黄伟财 中级黑马   /  2013-12-27 16:09  /  908 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

在一个类中,一个非私有的成员函数怎么访问一个私有的成员函数。在本类中私有的东西,成员之间是不是可以相互访问。

评分

参与人数 1黑马币 +3 收起 理由
乔兵 + 3

查看全部评分

2 个回复

倒序浏览
给你个例子 解释已给出
  1. package com.mth.test;

  2. public class Test {
  3.         private int a = 10;

  4.         private void say() {
  5.                 System.out.println("我会说");
  6.         }

  7.         // 非私有的成员函数run() 访问私有成员函数say()
  8.         public void run() {
  9.                 say();
  10.                 System.out.println("我还会跑。。。。。" + a);// 直接访问私有变量a 相当于this.a
  11.         }

  12.         public static void main(String[] args) {
  13.                 new Test().run();

  14.         }

  15. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
乔兵 + 1

查看全部评分

回复 使用道具 举报
在同一个类中,就是在同一个作用域中。非私有的函数,直接调用私有函数就可以了。就像是一个房子,房间和房间里的东西都是私有的。客厅是公有的。外人来的时候只可以在公有的客厅呆着。不能去私有的房间。可你是房东,我管你私有公有,你想去哪就去哪,私有和公有的东西你随便摆放。
但是要注意静态。静态方法只能访问静态成员,非静态即可以访问静态,也可以访问非静态。静态中不可以定义this和super关键字。

评分

参与人数 1技术分 +1 收起 理由
乔兵 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马