有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

oop Java类声明说明

我做了简短的搜索,但不确定我在问什么。我刚刚开始学习Java和OOP

以这项声明为例:

SomeClass myClass = new SomeClass();

在PHP中(这是我最有经验的),您只需执行以下操作:

$myClass = new SomeClass

那么为什么会有区别呢?SomeClass的“前缀”是做什么的,在PHP中它是不必要的

在第一个示例中,我声明了一个类型为“SomeClass”的类,与您声明的方式大致相同:int myInt;

希望这是有意义的。谢谢

编辑也不是试图进入PHP/Java的争论,只是PHP是我熟悉的一种语言


共 (5) 个答案

  1. # 1 楼答案

    简言之,是的

    您的意思是想要一个类型为SomeClass的变量myClass,并将其初始化为new SomeClass()

    更长的解释:

    这样做的原因是,它让编译器、IDE和其他任何东西知道myClassSomeClass

    简短的例子:

    public class SomeClass(){
    
       public int SomeInt = 0;
       public string SomeString = "";
    
       public SomeClass(string initialString)
       {
           SomeString = initialString;
       }
    
       public SomeClass(int initalValue)
       {
          SomeInt = initialValue;
       }
    }
    

    现在,您可以创建一个SomeClass并对其进行初始化

    //Initialize a new instance of SomeClass with someString set to test
    SomeClass setSomeString = new SomeClass("test");
    //Initialize a new instance of SomeClass with SomeInt set to 4
    SomeClass setSomeInt = new SomeClass(4);
    

    或者你也可以这样做 //初始化SomeClass的新实例,然后设置值 SomeClass myClass=新的SomeClass(); 我的班级。SomeInt=4; 我的班级。SomeString=测试; 当然,这是一个非常简单的例子,但它显示了你正在做什么,以及你可以用它做什么

    正如所指出的,这被称为静态类型,因为您必须在编译时声明对象类型。PHP使用动态类型,这意味着它在运行时确定对象的类型

    在爪哇;但是,您可以使用var关键字让它动态地确定对象类型

  2. # 2 楼答案

    在这里,您将声明一个类型为SomeClass的新变量myClass,然后使用new SomeClass()为该变量指定该类的一个新对象

    也许这样写的区别更明显

    // Declares myClass to be of type SomeClass but without initializing it.
    SomeClass myClass; 
    // Creates a new object of the class SomeClass and asigns it to myClass 
    myClass = new SomeClass();
    

    正如bmargulies所说,java是一种强类型语言,在使用它之前必须声明变量的类型。这允许编译器在编译时进行类型检查,这在许多情况下可以防止编程错误

  3. # 3 楼答案

    这一行所做的是创建一个SomeClass类型的变量。换句话说,您正在创建一个与声明一个类不同的类SomeClass的实例。类的声明如下:

    public class SomeClass {
    
    }
    
  4. # 4 楼答案

    区别在于Java是静态类型的,而PHP是动态类型的

    这(简而言之)意味着java为了能够调用给定对象上的方法,编译器必须知道对象的类型。它会告诉你是否被允许调用这个方法

    在PHP中,这种检查是在运行时(稍后)执行的,因此不需要编译器(不需要编译器)来执行任何检查

  5. # 5 楼答案

    Java是一种“强类型语言”。PHP不是

    去搜索这个短语,你会有好几个小时的娱乐时间来学习什么是好的,什么是坏的,什么是无关紧要的。你会发现任何3个人都有5种观点