导航:首页 > 知识科普 > 私有方法怎么调用

私有方法怎么调用

发布时间:2022-10-18 08:00:32

‘壹’ java中如何调用私有变量或方法

private关键字
(1)私有的意义,可以修饰成员变量和成员方法
(2)特点:
被private修饰的后的成员只能在本类中被访问
(3)private的应用:
以后再写一个类的时候:
把所有的成员变量给private了
提供对应的getXxx()/setXxx()方法
/*
封装和private的应用:
A:把成员变量用private修饰
B:提高对应的getXxx()和setXxx()方法
*/
//定义学生类
classStudent{
//姓名
privateStringname;
//年龄
privateintage;

//姓名获取值
publicStringgetName(){
returnname;
}

//姓名设置值
publicvoidsetName(Stringn){
name=n;
}

//年龄获取值
publicintgetAge(){
returnage;
}

//年龄赋值
publicvoidsetAge(inta){
age=a;
}
}

//测试类
classStudentTest{
publicstaticvoidmain(String[]args){
//创建学生对象
Students=newStudent();

//使用成员变量
//错误:被私有修饰了,外界不能直接访问了
//System.out.println(s.name+"---"+s.age);
System.out.println(s.getName()+"---"+s.getAge());

//给成员变量赋值
//s.name="林青霞";
//s.age=27;
//通过方法给赋值
s.setName("林青霞");
s.setAge(27);
System.out.println(s.getName()+"---"+s.getAge());
}
}

‘贰’ java反射机制怎样调用类的私有方法

为了一看就懂,请看下面的示例(假设调用 MyTest类的私有方法 privateMethod()):

publicclassReflectionTest{

(Objectobj)throwsSecurityException,NoSuchMethodException,IllegalArgumentException,IllegalAcces***ception,InvocationTargetException{//核心代码加粗
Classcls=obj.getClass();
//获得类的私有方法
Methodmethod=cls.getDeclaredMethod("privateMethod",null);
method.setAccessible(true);//没有设置就会报错
//调用该方法
method.invoke(obj,null);
}
publicstaticvoidmain(Stringargs[])throwsSecurityException,IllegalArgumentException,NoSuchMethodException,IllegalAcces***ception,InvocationTargetException{

setObjectColor(newMyTest());
}
}
//测试类
classMyTest{

publicvoidsetMyTest(){
System.out.println("setMyTest");
}
/**
类的私有方法
**/
privatevoidprivateMethod(){
System.out.println("调用了privateMethod");
}

}

‘叁’ 在java里子类中公有方法怎么调用私有方法

直接调用即可。公有方法只是说执行权限是公有的,但是方法仍然定义在该类中,其他类是没有权限修改的,因此直接调用私有方法并不会导致权限溢出。

至于继承关系,你只要搞清楚哪些函数来自继承,哪些来自重写就可以知道他们的私有公有属性,和这个无关(只要是protected级别以上都可以调用)

publicclassTest{
privatevoidprivateMethod(){
}

publicvoidpublicMethod(){
privateMethod();
}
}

这样是没有问题的

‘肆’ java中,怎么调用别的类的私有方法

反射(reflection)
[java] view plain
public static void main(String[] args) throws Exception {

Constructor<?> constructor = SecretTool.class.getDeclaredConstructors()[0];
constructor.setAccessible(true);
SecretTool tool = (SecretTool) constructor.newInstance(); // 得到它的一个实例

for(Method method : SecretTool.class.getDeclaredMethods()) {
method.setAccessible(true);
if(method.getName().equals("myMotto")) {
method.invoke(tool); // 调用没有返回值,无参的私有方法
} else if(method.getName().equals("calculate")) {
Integer result = (Integer)method.invoke(tool, 1,2);
System.out.println("1 + 2 = " + result.toString()); // 调用返回值为整数,且带参的私有方法
}
}
}

输出结果:
[plain] view plain
I like potato
1 + 2 = 3

‘伍’ 在一个类中如何调用另一个类的私有方法

用private修饰的方法,那是私有的..不管你外部哪里如何调用都不行的.这个都是jdk规定死的.公有方法可以调用..

就好比你媳妇和你身上的钱.都很重要..钱可以借别人用用..媳妇能借么?对吧.哪怕是父母兄弟.该借的能借.不能借的打死接不到..

当然.这私有方法就和媳妇一样..不管是谁..就是java他爸来也是没法访问私有的方法..所以.你在反射.也不行..这压根和注释都没有关系...

老大私有是啥概念.就是自己的东东..你要知道..媳妇能公有么?媳妇就是private的..那不是小姐.小姐是public的

‘陆’ java类中方法private怎么调用

私有方法,类外部是无法调用的,解决方法,一,修改为public方法,而,在类内部再添加一个public方法,该方法去调用私有,这样就不用改动到原方法了

‘柒’ java中如何调用私有变量或方法

private关键字
(1)私有的意义,可以修饰成员变量和成员方法
(2)特点:
被private修饰的后的成员只能在本类中被访问
(3)private的应用:
以后再写一个类的时候:
把所有的成员变量给private了
提供对应的getXxx()/setXxx()方法
/*
封装和private的应用:
A:把成员变量用private修饰
B:提高对应的getXxx()和setXxx()方法
*/
//定义学生类
class Student {
//姓名
private String name;
//年龄
private int age;
//姓名获取值
public String getName() {
return name;
}
//姓名设置值
public void setName(String n) {
name = n;
}
//年龄获取值
public int getAge() {
return age;
}
//年龄赋值
public void setAge(int a) {
age = a;
}
}
//测试类
class StudentTest {
public static void main(String[] args) {
//创建学生对象
Student s = new Student();
//使用成员变量
//错误:被私有修饰了,外界不能直接访问了
//System.out.println(s.name+"---"+s.age);
System.out.println(s.getName()+"---"+s.getAge());
//给成员变量赋值
//s.name = "林青霞";
//s.age = 27;
//通过方法给赋值
s.setName("林青霞");
s.setAge(27);
System.out.println(s.getName()+"---"+s.getAge());
}
}

‘捌’ java中, 怎么调用别的类的私有方法

利用反射即可调用;
简易实例代码如下:
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;

/**
* @author thomaslwq
* @version 创建时间:Sep 4, 2012 9:53:49 PM
* 类说明
*/
public class ReflectionTest {

public static void setObjectColor(Object obj) throws SecurityException, NoSuchMethodException, IllegalArgumentException, IllegalAcces***ception, InvocationTargetException{
Class cls = obj.getClass();
//获得类的私有方法
Method method = cls.getDeclaredMethod("privateMethod", null);
method.setAccessible(true); //没有设置就会报错
//调用该方法
method.invoke(obj, null);
}
public static void main(String args[]) throws SecurityException, IllegalArgumentException, NoSuchMethodException, IllegalAcces***ception, InvocationTargetException{

setObjectColor(new MyTest());
}
}
//测试类
class MyTest{


public void setMyTest(){
System.out.println("setMyTest");
}
/**
类的私有方法
**/
private void privateMethod(){
System.out.println("调用了 private Method");
}

}

‘玖’ 私有内部类的私有方法怎么调用

对外部类来说,内部类也是其内部成员,当然可以调用其私有成员(包括私有构造器)。

‘拾’ 在一个类中如何调用另一个类的私有方法

利用反射在外部类生成调用类的对象,然后获取调用方法,并修改Accessible,然后执行方法

阅读全文

与私有方法怎么调用相关的资料

热点内容
中式棉袄制作方法图片 浏览:63
五菱p1171故障码解决方法 浏览:858
男士修护膏使用方法 浏览:546
电脑图标修改方法 浏览:607
湿气怎么用科学的方法解释 浏览:537
910除以26的简便计算方法 浏览:805
吹东契奇最简单的方法 浏览:704
对肾脏有好处的食用方法 浏览:98
电脑四线程内存设置方法 浏览:512
数字电路通常用哪三种方法分析 浏览:13
实训课程的教学方法是什么 浏览:525
苯甲醇乙醚鉴别方法 浏览:82
苹果手机微信视频声音小解决方法 浏览:700
控制箱的连接方法 浏览:75
用什么简单的方法可以去痘 浏览:789
快速去除甲醛的小方法你知道几个 浏览:803
自行车架尺寸测量方法 浏览:124
石磨子的制作方法视频 浏览:152
行善修心的正确方法 浏览:403
薯仔炖鸡汤的正确方法和步骤 浏览:276