gpt4 book ai didi

jvm - java语法问题

转载 作者:行者123 更新时间:2023-12-01 16:33:29 26 4
gpt4 key购买 nike

代码如下:

public class EmployeeTest
{
public static void main(String args[]){
//System.out.println("hello world");

Employee aEmployee = new Employee("David",1000);
System.out.println(aEmployee.getName() + aEmployee.getSalary());
}
}

class Employee // **why can't I put a "public" here**
{
// Constructor
public Employee(String name, double salary)
{
this.name = name;
this.salary = salary;
}

// Methods
public String getName()
{
return this.name;
}

public double getSalary()
{
return this.salary;
}

// instance field
private String name;
private double salary;
}

我的问题是:在第二个类定义的第一行中,为什么我不能放置“public”来定义它?当使用它定义一个类时,“public”的确切含义是什么?

最佳答案

这是语言功能。每个 .java 文件只能有一个顶级公共(public)类,并且公共(public)类名称必须与源 java 文件名匹配。

基本上,非公共(public)类型在之外无法访问,因此如果您希望允许类型在任何地方使用,请使其公共(public)>。

永远不要在默认包中创建类型。 (Always use package)

员工.java

<小时/>
package com.abc.model;

public class Employee{..}

EmployeeTest.java

<小时/>
package com.abc.test;

public class EmployeeTest{ ... }

关于jvm - java语法问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11966861/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com