关于有主方法main()的类 和 没有主方法的类的思维方式

主方法main(),虽然诞生于类,但其实是不考虑诞生它的类的内容是什么!

诞生在哪一个类,就仅仅获得了两个特点:

1、调用本类中静态方法时,可以隐藏该 类名 . 来调用。(其实没什么用,再写一次也一样,可以忽略这条)。

2、获得了该类所属于包的所有访问权限。(仅此而已)

 

定位补充:在mian()方法内,所创建的对象,都以main()方法所在包的访问权限为基准,即是跨包创建的对象都不能访问包和包以下的访问权限。

所谓的包访问权限也只是仅仅给当前包下所调用的JVM的main()方法,一个默认包访问,访问其他包的类都视为必须拥有包以上访问权限才能访问。

如果需要跨包,该类下导包。(即可以环游所有Java程序,除package包访问权限下的类)

类的访问权限只有两个(包访问,和全局访问)记忆:要么给自己同胞看,要么大家看。

 

没有主方法的类,如何跨包?

理解:

1、导包(所有类都仅有当前包和java默认给的包访问权限)告诉程序你要找到是谁?(相对地址或绝对地址都行)

2、该类下创建对象。用字段保存该对象,或者方法中直接使用或返回。

3、当有主方法调用时,自动会根据创建的对象,牵一发而动全身

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
抱歉,我是一个语言模型 AI,无法给您画图。但我可以为您解释多态和抽象。 多态:多态是面向对象编程中的一个重要概念,是指同一个方法可以根据对象的不同而具有不同的表现形式。在 Java 中,多态可以通过继承、接口实现和方法重写来实现。 抽象:抽象是一种不能被实例化的,它的要作用是为了被继承。抽象可以包含抽象方法和非抽象方法,抽象方法必须被子实现,非抽象方法可以被子继承或重写。 下面是一个简单的示例代码,演示了多态和抽象的使用: ```java abstract class Shape { public abstract void draw(); } class Circle extends Shape { public void draw() { System.out.println("画一个圆形"); } } class Rectangle extends Shape { public void draw() { System.out.println("画一个矩形"); } } public class Main { public static void main(String[] args) { Shape s1 = new Circle(); Shape s2 = new Rectangle(); s1.draw(); s2.draw(); } } ``` 输出结果为: ``` 画一个圆形 画一个矩形 ``` 在这个示例中,Shape 是一个抽象,它包含一个抽象方法 draw()。Circle 和 Rectangle 都是 Shape 的子,它们都实现了 draw() 方法。在 main() 方法中,我们分别创建了一个 Circle 和一个 Rectangle 对象,并将它们赋值给 Shape 型的 s1 和 s2 变量。由于多态的特性,s1 和 s2 可以调用 draw() 方法,它们具有不同的表现形式。最终输出结果为画一个圆形和画一个矩形。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值