精华内容
下载资源
问答
  • javapublic用法

    千次阅读 2021-02-12 09:50:59
    一.Java访问权限饰词(access specifiers)Javapublic、protect、friendly、private四种访问权限,并且这四访问权限的访问范围越来越小。1. friendly1) 果一个class内的数据成员或方法没有任何权限饰词,那么它的...

    一.Java访问权限饰词(access specifiers)

    Java有public、protect、friendly、private四种访问权限,并且这四访问权限的访问范围越来越小。

    1. friendly

    1) 果一个class内的数据成员或方法没有任何权限饰词,那么它的缺省访问权限就是friendly。同一个package内的其它所有classes都可以访问friendly成员,但对package以外的classes则形同private。

    2)对于同一个文件夹下的、没有用package的classes,Java会自动将这些classes初见为隶属于该目录的default package,可以相互调用class中的friendly成员。如以下两个class分别在同一个文件夹的两个文件中,虽然没有引入package, 但隶属于相同的default package。

    class Sundae{

    //以下两个方法缺省为friendly

    Sundae(){}

    Void f() {System.out.println(“Sundae.f()”);

    }

    public class IceCream{

    public static void main(String[] args){

    Sundae x = new Sundae();

    x.f();

    }

    }

    2. public:可以被任何class调用

    3. private:private成员只能在成员所属的class内被调用,如:

    class Sundae{

    private Sundae(){}//只能在Sundae class中被调用

    Sundae(int i) {}

    static Sundae makASundae() {

    return new Sundae();

    }

    }

    public class IceCream{

    public static void main(String[] args){

    // Sundae class中构造函数Sundae()是private,

    // 所以不能用它进行初始化

    //Sundae x = new Sundae();

    Sundae y = new Sundae(1);//Sundae(int)是friendly,可以在此调用

    Sundae z = Sundae.makASundae();

    }

    }

    4. protected:具有friendly访问权限的同时,又能被subclass(当然包括子孙类,即子类的子类)所访问。即,既能被同一package中的classes访问,又能被protected成员所在class的subclass访问。

    二.Class的访问权限

    1.Class同样具有public、protect、friendly、private四种访问访问权限:

    1)public:在任何地方都可被使用

    2)protect、private:除了它自己,没有任何class可以使用,所以class不能是

    protected或private(inner class除外)

    3) friendly:同一个package中的classes能用

    2. 如何调用构造函数被声明为private的class

    1) 用static函数

    2) 用Singteton模式

    class Soup{

    private Soup(){}

    //(1)静态函数方法

    public static Soup makeSout(){

    return new Soup();

    }

    //(2)The "Singleton" pattern:

    private static Soup ps1 = new Soup();

    public static Soup access(){

    return ps1;

    }

    public void f(String msg){

    System.out.println("f(" + msg + ")");

    }

    }

    public class Lunch{

    public static void main(String[] args){

    //Soup priv1 = new Soup();编译错误

    Soup priv2 = Soup.makeSout();

    Soup priv3 = Soup.access();

    priv2.f("priv2");

    priv3.f("priv3");

    }

    展开全文
  • java中的public static void main是什么意思发布时间:2020-06-22 15:27:34来源:亿速云阅读:266作者:Leahjava中的public static void main是什么意思?可能很多人都不太了解,为了让大家更加了解,小编给大家总结...

    java中的public static void main是什么意思

    发布时间:2020-06-22 15:27:34

    来源:亿速云

    阅读:266

    作者:Leah

    java中的public static void main是什么意思?可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

    public static void main的意思是:

    public static void main(String[] args),是java程序的入口地址,java虚拟机运行程序的时候首先找的就是main方法。

    一、这里要对main函数讲解一下,参数String[] args是一个字符串数组,接收来自程序执行时传进来的参数。如果是在控制台,可以通过编译执行将参数传进来,命令行如下:

    497f51fb6505460c88ca817b1c1fcbb1.png

    二、这样传进main函数的就是一个字符串数组, args[0] =a; args[1]=b;args[2]=c,  如果不传参数进来,args为空。

    4bd4b1d602598f5611516c56f6f74a2b.png

    三、在Programmer arguments中输入要传进来的参数以空格的方式隔开a b c。

    43add016c77e2de4521b24a6d24458e0.png

    四、vm在试图运行一个类之前,先检查该类是否包含一个特殊方法。这个方法必须是公有的,以便在任何位置都能访问得到。

    05d521eb980a4c38be8f6628e18f0cd3.png

    五、“public”表示程序的访问权限,表示的是任何的场合可以被引用。

    91f6f65273a2075899eec0b5fd7df2a0.png

    六、“static”表示方法是静态的,不依赖类的对象的。

    76d7390a7cee23ddbe085dc600e33819.png

    七、“void:main()”方法是不需要返回值的。

    93a0604ec90e87f144fbd85d405273b0.png

    上述就是小编为大家分享的java中的public static void main的意思,如果您也有类似的疑惑,不妨参照上述方法进行尝试。如果想了解更多相关内容,请关注亿速云行业资讯。

    展开全文
  • Java中4种“访问控制符”分别为private、default、protected、public,它们说明了面向对象的封装性,所以我们要利用它们尽可能的让访问权限降到最低,从而提高安全性。下面详细讲述它们的访问权限问题。其访问权限...

    Java是使用“访问控制符”来控制哪些细节需要封装,哪些细节需要暴露的。 Java中4种“访问控制符”分别为private、default、protected、public,它们说明了面向对象的封装性,所以我们要利用它们尽可能的让访问权限降到最低,从而提高安全性。

    下面详细讲述它们的访问权限问题。其访问权限范围如表5-1所示。

    表5-1 访问权限修饰符

    89eb119cc63c101a936fb49ec0ddcd28.png

    1. private 表示私有,只有自己类能访问

    2. default表示没有修饰符修饰,只有同一个包的类能访问

    3. protected表示可以被同一个包的类以及其他包中的子类访问

    4. public表示可以被该项目的所有包中的所有类访问

    下面做进一步说明Java中4种访问权限修饰符的区别:首先我们创建4个类:Person类、Student类、Animal类和Computer类,分别比较本类、本包、子类、其他包的区别。

    public访问权限修饰符:

    599a698f4c3cc90ed1825330d0157bb6.png

    图5-8 public访问权限—本类中访问public属性

    efba9f851f101e7ffbc9c0ce68e0c084.png

    图5-9 public访问权限—本包中访问public属性

    e82f74cc8e3bd0fb60364fc45fb9bbca.png

    图5-10 public访问权限—不同包中的子类访问public属性

    748e5afbe98712977e6daf0c481ee354.png

    图5-11 public访问权限—不同包中的非子类访问public属性

    通过图5-8 ~ 图5-11可以说明,public修饰符的访问权限为:该项目的所有包中的所有类。

    protected访问权限修饰符:将Person类中属性改为protected,其他类不修改。

    1aaa174094b3373e95b3f96057a91b39.png

    图5-12 protected访问权限—修改后的Person类

    1adbaface21900bf622ba6c3309de75a.png

    图5-13 protected访问权限—不同包中的非子类不能访问protected属性

    通过图5-12和图5-13可以说明,protected修饰符的访问权限为:同一个包中的类以及其他包中的子类。

    默认访问权限修饰符:将Person类中属性改为默认的,其他类不修改。

    725b4d5c20995baf9ac5d3ebc82381a2.png

    图5-14 默认访问权限—修改后的Person类

    通过图5-14可以说明,默认修饰符的访问权限为:同一个包中的类。

    private访问权限修饰符:将Person类中属性改为private,其他类不修改。

    cccdbde26888b9b91e980451658f46ca.png

    图5-15 private访问权限—修改后的Person类

    通过图5-15可以说明,private修饰符的访问权限为:同一个类。

    类的属性的处理:

    1. 一般使用private访问权限。

    2.  提供相应的get/set方法来访问相关属性,这些方法通常是public修饰的,以提供对属性的赋值与读取操作(注意:boolean变量的get方法是is开头!)。

    3. 一些只用于本类的辅助性方法可以用private修饰,希望其他类调用的方法用public修饰。

    【示例5-10】JavaBean的封装实例

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    public class Person {

    // 属性一般使用private修饰

    private String name;

    private int age;

    private boolean flag;

    // 为属性提供public修饰的set/get方法

    public String getName() {

    return name;

    }

    public void setName(String name) {

    this.name = name;

    }

    public int getAge() {

    return age;

    }

    public void setAge(int age) {

    this.age = age;

    }

    public boolean isFlag() {// 注意:boolean类型的属性get方法是is开头的

    return flag;

    }

    public void setFlag(boolean flag) {

    this.flag = flag;

    }

    }

    下面我们使用封装来解决一下5.4.1中提到的年龄非法赋值的问题。

    【示例5-11】封装的使用

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    32

    33

    34

    35

    36

    37

    38

    39

    40

    41

    42

    43

    44

    45

    46

    47

    48

    class Person {

    private String name;

    private int age;

    public Person() {

    }

    public Person(String name,int age) {

    this.name = name;

    // this.age = age;//构造方法中不能直接赋值,应该调用setAge方法

    setAge(age);

    }

    public void setName(String name) {

    this.name = name;

    }

    public String getName() {

    return name;

    }

    public void setAge(int age) {

    //在赋值之前先判断年龄是否合法

    if (age >130 || age 0) {

    this.age =18;//不合法赋默认值18

    }else {

    this.age = age;//合法才能赋值给属性age

    }

    }

    public int getAge() {

    return age;

    }

    @Override

    public String toString() {

    return "Person [name=" + name +", age=" + age +"]";

    }

    }

    public class Test2 {

    public static void main(String[] args) {

    Person p1 =new Person();

    //p1.name = "小红"; //编译错误

    //p1.age = -45;  //编译错误

    p1.setName("小红");

    p1.setAge(-45);

    System.out.println(p1);

    Person p2 =new Person("小白",300);

    System.out.println(p2);

    }

    }

    执行结果如图5-16所示:

    0352374620c690d641c16ea83dbf31e9.png

    图5-16 示例5-11运行效果图

    展开全文
  • java编程中开头public是什么意思?

    千次阅读 2021-04-26 02:11:25
    public关键字是和访问权限相关的,它所修饰的方法对所有类都是可以访问的 ...public里的所有类包括:在不同包内也可以访问。 default访问权限又叫包访问权限:在这种权限下,可以访问在同一个包中的其他类的成员。 ...

    public关键字是和访问权限相关的,它所修饰的方法对所有类都是可以访问的

    Java中的访问权限共有四种,它们的作用范围如下图所示:在这里插入图片描述
    注释:
    public里的所有类包括:在不同包内也可以访问。
    default访问权限又叫包访问权限:在这种权限下,可以访问在同一个包中的其他类的成员。

    展开全文
  • 展开全部首先62616964757a686964616fe58685e5aeb931333365646331说一下int 和public int的区别:这...public void toString(){......}对于这个int,他是该类的成员属性,因为没有访问修饰符,所以java默认认为他是d...
  • Java中的public static final来修饰数组与接口变量public static final来修饰数组final对数组的作用怎样实现对数组的public static final作用 public static final来修饰数组 举个栗子: public class A{ public ...
  • Java源文件如果含有主类,主类必须是public类答:×某产妇,会阴侧切,顺产一女婴,母儿无异常,母乳喂养。对该产妇的产褥期护理,下列内容错误的是()答:鼓励多饮水,产后 7 小时内及时排尿智慧职教: 第一次注射狂犬病疫苗...
  • Required request body is missing:public java.util.List错误 Required request body is missing:public java.util.List错误的原因是参数中有对象参数并且用了@RequestBody注解,但是这个接口又是一个get请求,...
  • 在使用springboot测试类时如果不注意就会出现这个异常 例如这样: @RunWith(SpringJUnit4ClassRunner.class) ...public class MybatisPlusTest { @Autowired private UserMapper userMapper; @Test void c
  • java里 import java.util.Scanner;的意思

    千次阅读 2021-02-26 16:28:41
    (没有这句话的话当你使用Scanner时会报错) 例如:public class TestScanner { public static void main(String[] args) { Scanner s = new Scanner(System.in); System.out.println("请输入...
  • SpringBoot启动报错:java.sql.SQLNonTransientConnectionException: Public Key Retrieval is not allowed mysql8.0或者8.0以上的版本的url后面加上allowPublicKeyRetrieval=true就行了 spring.datasource.url=jdbc:...
  • 如果有一个类是public类,那么源文件的名字必须与这个类的名字完全相同,扩展名是.java。2、如果源文件中没有public类,那么源文件的名字可以任意取。这样编译是没问题的,运行时选择主类(包含main方法)运行就可以。...
  • java.lang.IllegalStateException: No primary or single public constructor found for interface java.util.List - and no default constructor found either 报错的原因是在Controller层直接绑定了List类型的...
  • public Map<String,Object> query(@RequestBody Building building, HttpServletRequest request){ User param = (User)request.getAttribute("user"); User loginUser = userService.detail(param.getId()...
  • public string 和public void区别

    千次阅读 2021-01-06 16:06:08
    参考了很多文章,整理了一小部分public string 和public void区别 适合新手看,大佬请忽略! 区别就在这里: public String getString(){ return "return一个String类型的值"; } public void getString(){ } ...
  • 解决方案:在Spring Data JPA中自定义SQL语句,使用@Query(value=“")的时候出现如上错误 然后需要在@Query中添加nativeQuery = true,如@Query(value="”,nativeQuery = true)。 有nativeQuery = true时,是可以...
  • Java内部类使用注意事项:1. 非静态内部类成员可以访问外部类实例成员 (如注释1),但外部类访问非静态内部类的成员 必须创建非静态内部类对象来访问其成员,如注释2public class Lab02 {private int ss=5;private ...
  • Java中的访问修饰符有四种,分别是public,protected,默认,private。主要作用是控制类之间的数据的访问权限。这些修饰符可以修饰的Java元素有下面这些: 类 接口 类中的方法 接口中的方法 类中的字段 接口中的...
  • JAVA里VOID是什幺意思。void是无返回值的意思。比方说 public void walk(){System.out.print("你好!");}如果别的地方调用这个方法 就会打印出 你好!再看这里:public String walk() //注意这里的返回类型是String...
  • 出现这种错误一般都是自己定义的类名和唯一一个public修饰的类的名称不一致导致的,只需要将该public修饰的类的名称修改成和文件名一样就行了
  • Java基础笔试题及答案

    千次阅读 2021-02-27 08:54:39
    Java基础笔试题及答案想要面试java程序员吗,那么就必须通过笔试这一关,下面YJBYS小编为大家精心搜集了关于Java基础笔试题及答案,欢迎大家参考借鉴,希望可以帮助到大家!1.Java语言特点是什么?Java语言具有如下...
  • public <T> T method(T t)方法详解

    千次阅读 2021-01-10 18:01:09
    第一个 <T> 定义当前我有一个泛型变量类型,类型名使用T来表示 第二个 T 表示show3方法返回值类型为T,其中的<T>只是为了在函数声明前,定义一种范型;因此下面的函数也是合法的: ...
  • 按注释完成程序import java.awt.*;import java.awt.event.*;...public class ButtonTestApplet extends JApplet{public void init(){ButtonPanel buttonpanel = new ButtonPanel();Container container =...
  • 【☕Java】C语言叫【函数】,Java里叫【方法】????方法的基本用法????什么是方法(method)????方法定义语法????方法调用的执行过程????实参和形参的关系(敲重点)????无返回值的方法????方法的重载????重载要解决...
  • javaimageicon用法

    千次阅读 2021-03-14 19:37:33
    import java.awt.BorderLayout; import java.awt.GridLayout; import java.awt.event.ActionEvent; import javax.swing.ImageIcon; import javax.swing.JButton; im......package solitaire; import java.awt.Image;...
  • JAVA中 @Override 的作用

    千次阅读 2021-02-28 06:41:41
    首先看一下下面的示例代码 :Parent.javapublic class Parent...{public void parentMethod() ...{}}IChild.javapublic interface IChild ...{void interfaceMethod();}Child.javapublic class Child extends Parent...
  • public TmyResult batchDeleteProduct( List<Integer> ids){ System.out.println(ids); return null; } ``需要在list前面添加注解@RequestParam(value = "ids" ,required=false) 如下图 @...
  • java中声明一个类的方式有两种 即:public class 类名称 和 class 类名称。(1)使用public class 声明一个类时,类名称必须和文件名一致,否则程序将无法编译。(2)使用class声明一个类时,类名称可以和文件名不一致...
  • Java项目:在线书城书店系统(java+jdbc+Servlet+mysql)

    千次阅读 热门讨论 2021-12-01 08:53:42
    一个基于Java的网上书店的设计与实现,归纳出了几个模块,首先是登录注册模块,购物车模块,订单模块,个人中心模块,用户管理模块,图书管理模块等。 该项目是java技术的实战操作,采用了...public class BookInfoCon
  • 基于UDP协议的网络编程(Java

    千次阅读 2021-10-24 13:22:02
    Java中使用DatagramSocket代表UDP协议的Socket, DatagramSocket本身只是“对外接口”,不维护状态,不能产生IO流,它的唯一作用就是接收和发送数据报; Java使用DatagramPacket来代表数据报, DatagramSocket...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,761,130
精华内容 3,104,452
关键字:

java里的public

java 订阅