class Outer1{
private static void outerMethod(){
System.out.println("inside outerMethod");
}
static class Inner{
public static void main(String[] args){
System.out.println("inside inner class method");
outerMethod();
}
}
}
我正在尝试通过命令提示符执行该程序。文件名应该是什么?我尝试了“ Outer1”和“ Inner”。我应该对此程序进行任何更改吗?
答案 0 :(得分:1)
应该是
include 'db.php';
if(isset($_POST['Submit'])) {
$name = $_POST['title'];
$text = $_POST['text'];
$category = $_POST['category'];
$insert = mysqli_query($con,
"INSERT INTO `items`(
`title`,
`text`,
`category`
)
VALUES (
'$name',
'$text',
'$category')"
);
if (!$insert) {
echo mysqli_error($con);
} else {
echo "Inserted!";
}
}
<form method="post">
<input type="text" name="title" placeholder="Enter the title..">
<input type="text" name="text" placeholder="Enter the text..">
<input type="text" name="category" placeholder="Enter the category..">
<input type="submit" value="Submit">
</form>
请注意,这不是文件名称。这是完全合格的 class 名称。
但实际上,您正在使自己的生活变得比必要的更加复杂。只是在不需要时不使用嵌套类。
并始终将您的类放在一个包中,并缩进您的代码。
答案 1 :(得分:0)
如果您的班级不是公开的,则文件名与编译无关紧要,但是在执行程序的情况下,您应该使用Both类名,因为您使用的是内部类。
例如: ,如果您的文件名是Outer1.java
javac Outer1.java
,
为了执行,您应该使用此java Outer1$Inner
尝试一下。
答案 2 :(得分:0)
文件名,例如Foo.java
表示必须在其中声明以下类:
public class Foo {
public static void main(String... args) {}
}
答案 3 :(得分:0)
静态类,即在类内部创建的静态类,在Java中称为静态嵌套类。它无法访问非静态数据成员和方法。可以通过外部类名称进行访问。
静态嵌套类无法访问非静态(实例)数据成员 或方法。
class Outer1{
private static void outerMethod(){
System.out.println("inside outerMethod");
}
static class Inner{
void msg (){
System.out.println("inside inner class method");
outerMethod();
}
}
public static void main(String[] args) {
Outer1.Inner obj = new Outer1.Inner();
obj.msg();
}
}
您可以了解更多here。