ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

20210922

2021-09-22 12:34:03  阅读:130  来源: 互联网

标签:包中 no 方法 yes main 20210922 public


main方法为什么必须为public,static

public: 保证这个类被访问到,由虚拟机JVM使用,直接创建方法,没有实例对象

由于JVM需要在类外调用main方法,而且JVM运行main方法时,并没有创建main方法所在的类的一个实例对象,所以它只能通过类名来调用main方法作为程序的入口,因而该方法必须是static。


方法重载

一个类中名字相同的多种方法。

通过参数不同(个数/数量)不同来辨别重载方法。

注意返回值可以相同或者不同。例:

float add(intx, inty) int add(int x int y) 不允许


概念

多个类可能出现类名冲突,使用包来管理类。

可以实现类的共享与复用

同一个包的类在默认情况下可以互相访问

同一包中类名不可以重复

包的声明

package pkg1[.pkg2[.pkg3]...];

1.Java源文件 只能在第一条语句,前只可由注释/空行

2.一个文件只可有一个包

3.包名与对应文件夹名大写一样

4.包层次的根文件夹由ClassPath来确定 (已不需要配置)

包的 命名

1.小写字母,不重复

2.建议

  • Internet 反序

  • _代替

包与目录

包名即文件夹名,即目录名。

目录名不一定是报名

若当前包中有 没有声明的类: classpath `;(当前) 地址

引入包

import[pkg1[.pkg2]].(classname|*);

可以用 * 代替所有类

java 编译器为所有程序自动引入包java.lang.

若路径相同,也可能引入不同的包

例: cn.edu.hitwh*

cn.edu.hitwh.pub*

编译单元/编译/运行

 

  1. 编译单元=java源代码文件

    包的声明+import+类和接口的声明

  • 只有一个public,类名与文件名相同

其他类是辅助类,编译后产生一个class文件。

  1. 编译:

    通过javac.exe 引导类/扩展类/用户类

  2. 运行

    • 未声明包 classpath配置

    • 有包名 使用定位到该文件夹: cd +文件名(即包名)

类与成员的访问

1.类

public 与缺省

同一包中 √ √

不同包中 √ ×

2.类成员

  • 共有 public 被任何

  • 保护

  • 私有

  • 默认

类型private无修饰protectedpublic
同一类 yes yes yes yes
同一包中的子类 no yes yes yes
同一包中的非子类 no yes yes yes
不同包中的子类 no no yes yes
不同包中的非子类 no no no yes
  1. get/set 方法

  • get : 读取

    public<fieldType>get<FieldName>(){

    return<fieldName>

    }
  • set: 修改属性

    public void set<FieldName>(<fieldType> 
                              <paramName>) {
       <fieldName> = <paramName>;
    }

关键词

this

super

null

SomeClass aSomeClass=null

final

  • 修饰变量

实例变量与类变量

使用之前初始化

    • 修饰方法

      不能被子类覆盖

      final returnType methodName(paramalist)

    • 修饰类

      不可被继承,安全,类比较完善

      保证String类型的唯一性

      \



标签:包中,no,方法,yes,main,20210922,public
来源: https://www.cnblogs.com/leilei2021/p/15319413.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有