public class MethodCall

{

public static void main(String[] args)

{

Test.sayStatic();

Test test = new Test();

test.sayInstance();

}

}

class Test

{

public static void sayStatic()

{

System.out.println("这是一个静态方法。");

}

public void sayInstance()

{

System.out.println("这是一个实例方法。");

}

}

我的理解:

public class Authorization {

public static final int MANAGER = 1;

public int manager;

public static void main(String[] args) {
Authorization A=new Authorization();
A.manager=1;
Test B=new Test(); System.out.println(B.canAccess(A.manager)+"不同类下非静态的实例方法");
//非静态方法必须通过实例调用,方法是Test类下的方法,所以用Test属性的实例来调用
System.out.println(Test.Access(A.MANAGER)+"不同类下静态的实例方法");
//静态的方法可以不需要实例来调用,可以直接用方法名调用,这里的Access方法不在Authorization类下,所以要写上类名注明来处
System.out.println(A.couldAccess(A.manager)+"同一个类下非静态的实例方法");
//这里的couldAccess方法在Authorization类下且为非静态的,所以要用Authorization属性的实例来调用
System.out.println(weAccess(A.manager)+"同一个类下静态的实例方法");
/*这里的weAccess方法也在Authorization类下且为静态,故不需要创建实例来调用,并且可以省略掉类名。
加上Authorization或者实例来调用也可以,最好是加上类名,以便使格式保持一致*/ //这里的大写的MANAGER这些变量可以看做是实例的属性,也可以直接作为常量使用,最好是直接作为常量使用
} public boolean couldAccess(int access) {
if (access == Authorization.MANAGER)
{
return true; } else
{
return false;
}
} public static boolean weAccess(int access) {
if (access == Authorization.MANAGER)
{
return true;
} else
{
return false;
} }

}

另一个类Test:

public class Test {

public boolean canAccess(int access) {

if (access == Authorization.MANAGER)

{

return true;

} else

{

return false;

}

}

public static boolean Access(int access) {
if (access == Authorization.MANAGER)
{
return true;
} else
{
return false;
} }

}

Java中的静态方法和实例方法的调用的理解(不同的类下的方法调用)的更多相关文章

  1. 第八节:详细讲解Java中的异常处理情况与I/O流的介绍以及类集合框架

    前言 大家好,给大家带来详细讲解Java中的异常处理情况与I/O流的介绍以及类集合框架的概述,希望你们喜欢 JAVA 异常 try...catch...finally结构的使用方法 class Tes ...

  2. Java中Date类型如何向前向后滚动时间,( 附工具类)

    Java中的Date类型向前向后滚动时间(附工具类) 废话不多说,先看工具类: import java.text.SimpleDateFormat; import java.util.Calendar ...

  3. Java中“指针”的解释以及对“引用”的理解

    Java中"指针"的解释以及对"引用"的理解 初学Java面对对象编程,对于一些概念还真的有点难以理解,主要是因为不由自主的联系到以前学过的C语言知识,时不时的 ...

  4. [ 转载 ] Java基础10--关于Object类下所有方法的简单解析

    关于Object类下所有方法的简单解析 类Object是类层次结构的根类,是每一个类的父类,所有的对象包括数组,String,Integer等包装类,所以了解Object是很有必要的,话不多说,我们直 ...

  5. Java内存的 静态方法和实例方法的区别及使用场景

    注意:变量指基本数据类型非对象,局部变量不能被静态修饰 1.(静态)成员变量存放在data segment区(数据区),字符串常量也存放在该区 2.非静态变量,new出来的对象存放在堆内存,所有局部变 ...

  6. java中synchronized 用在实例方法和对象方法上面的区别

    https://bijian1013.iteye.com/blog/1836575 在Java中,synchronized 是用来表示同步的,我们可以synchronized 来修饰一个方法.也可以s ...

  7. Java | 基础归纳 | 静态方法与实例方法的区别

    静态方法和实例方法的区别主要体现在两个方面: 在外部调用静态方法时,可以使用"类名.方法名"的方式,也可以使用"对象名.方法名"的方式.而实例方法只有后面这种方 ...

  8. JSz中的静态方法和实例方法的分析

    我又回来了,最近忙着喝枸杞,没来写博客感觉很有负罪感,今晚我来写一点小小的知识点 可能我们在用形如Array.of()的方法时会产生一些疑问,为什么我们能不实例化直接使用Array上的of()方法呢, ...

  9. java中的反射机制,以及如何通过反射获取一个类的构造方法 ,成员变量,方法,详细。。

    首先先说一下类的加载,流程.只有明确了类这个对象的存在才可以更好的理解反射的原因,以及反射的机制. 一.  类的加载 当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载,连接,初始化三 ...

随机推荐

  1. input[type=file]的美化

    __ 一般的选择框在美化过程中会出现各种问题,样式出错,文字无法更改等... 所有随之而生的便是这样的一种修饰方式:[将type=file的input与另一个按钮通过js绑定,这样便可以通过改变另一个 ...

  2. R语言查看栅格值

    有这么一个需求,知道栅格上的坐标,想看看这个坐标上的栅格值是多少.坐标长这个样子 那么这样的坐标下的栅格值该怎么看 cellFromXY(the.stack$t1,c( -1505000,683500 ...

  3. LRU算法的Java实现

    LRU全称是Least Recently Used,即最近最久未使用的意思. LRU算法的设计原则是:如果一个数据在最近一段时间没有被访问到,那么在将来它被访问的可能性也很小.也就是说,当限定的空间已 ...

  4. Git基本命令整理

    git help <command> # 显示command的help git show # 显示某次提交的内容 git show $id git co -- <file> # ...

  5. what is API

    JavaScript — A high-level scripting language built into browsers that allows you to implement functi ...

  6. C# 3.0 / C# 3.5 对象集合初始化器、匿名类

    对象集合初始化器 在 .NET 2.0 中构造一个对象的方法一是提供一个重载的构造函数,二是用默认的构造函数生成一个对象,然后对其属性进行赋值. 在 .NET 3.5/C# 3.0 中,我们有一种更好 ...

  7. 正试图在os加载程序锁内执行托管代码。不要尝试在DllMain或映像初始化函数内运行托管代码 问题解决方法

    方法一把vs菜单的 调试->异常->Managed Debuggin Assistants->LoaderLock

  8. spring的配置与使用

    spring的配置与使用 一.Spring介绍 1. 什么是Spring Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由 RodJohnson 在其著 ...

  9. Surface RT2使用情况

    Surface RT2是一个6年的古董了,暂时还能使用的功能包括但不限于一些xbox小游戏,ppt阅读(加载慢),pdf阅读(加载慢),word阅读. 2018/6/16 爱奇艺关闭了大部分win8R ...

  10. web中的请求:get  与 post

    web中get与post请求的区别:1. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到.post是通过HTTP post机制,将表 ...