JavaRush /Java 博客 /Random-ZH /喝咖啡休息#118。C++ 和 Java 语言有什么区别。Java 中的私有构造函数

喝咖啡休息#118。C++ 和 Java 语言有什么区别。Java 中的私有构造函数

已在 Random-ZH 群组中发布

C++ 和 Java 有什么区别

来源:Hackernoon 编程语言 C++ 和 Java 是当今最流行的语言之一。让我们讨论一下 C++ 和 Java 之间的主要区别。 喝咖啡休息#118。 C++ 和 Java 语言有什么区别。 Java 中的私有构造函数 - 1Java 是一种通用编程语言。它属于面向对象语言。Java 的创建者希望实现 WORA 原则——“一次编写,随处运行”。这意味着当您开发用 Java 编写的应用程序时,只要安装了 Java 运行时环境 (JRE),它就可以在任何平台上运行。该程序通过将 Java 编写的代码编译为字节码来运行。这种格式是使用JVM(即Java虚拟机)执行的。因此,JVM 是 Java 运行时环境 (JRE) 的一部分。虚拟机是独立于平台的。Java还有一种内存管理机制,称为垃圾收集器(GC)。开发人员创建对象,JRE 在对象停止时使用垃圾收集器清理内存。Java 语言的语法与其他类 C 语言的语法相似。以下是它的一些功能:
  • 区分大小写 - Java 中的用户和用户 ID 是不同的实体。

  • 方法名称。如果方法名称由一个单词组成,则它必须以小写字母开头。示例:firstMethodName()

  • 大驼峰命名法用于命名类。如果名称由一个单词组成,则必须以大写字母开头。示例:FirstClassName

  • 程序文件的名称必须与类的名称完全匹配,并考虑大小写。例如,如果该类名为FirstClassName,则该文件应名为FirstClassName.java

  • 标识符始终以字母(AZ、az)、$ 或下划线 _ 开头。

什么是C++语言?

C++ 是一种编译型、强类型、通用编程语言。它支持不同的编程范式:过程式、通用式、函数式;大多数注意力都集中在支持面向对象编程上。本质上,C++ 是一组告诉计算机要做什么的命令。这组指令通常称为源代码或简称为代码。命令要么是“函数”,要么是“关键字”。关键字(C/C++ 保留字)是该语言的基本构建块。函数是复杂的构建块,因为它们是用更简单的函数编写的。C++ 和 Java 函数的结构与本书的内容类似。目录可以显示书籍的章节;书籍中的每个章节都可以有自己的目录,由段落组成;每个段落可以有自己的小段落。尽管 C++ 提供了许多可以使用的常用函数和保留字,但该语言仍然要求您编写自己的函数。

C++ 和 Java 之间的主要区别

Java 和 C++ 都是面向对象的编程语言,但它们的相似之处仅此而已。他们之间还有更多的区别。当然,在选择一种语言来开发项目或任何其他特定案例时,C++ 和 Java 之间存在关键区别。以下是需要注意的标准。

图书馆

Java 还是 C++?哪个图书馆更大或更好?Java 还有更多的库。但你怎么知道哪些该用,哪些不该用呢?以下是其中一些的简要描述:
  • lang、util、nio、io、net。
  • Java 还具有用于使用 GUI 框架的库:javax.swing(更旧的 java.awt 的相当过时的扩展)。
  • 您甚至可以使用 java.sound 等播放音乐并创建 MIDI 文件。
C++语言有C标准库和C++标准库。开发人员首先应确保他们理解 C 和 C++ 之间的区别。此外,他们必须研究将在特定项目中使用的库。Java 内置了对文档注释的支持。C++ 不支持文档注释。您还可以使用方便的在线 Java 编译器。

输入机制

Java 主要是解释性的,因此它是平台无关的。C++生成目标代码;相同的代码不能在不同的平台上运行。

线程支持

Java 内置了对线程的支持。Java 有线程类,继承这些类可以创建新线程并重写 start 方法。请注意,C++ 没有本机线程支持。为此,使用非标准化的第三方库。

配套方式

Java有方法重载,但没有运算符重载。String类不使用+和+=运算符来连接字符串,并且String表达式使用自动转换类型,但这是一种特殊的内置情况。C++ 同时支持方法重载和运算符重载。

内存管理

Java 支持自动堆释放控制,但不支持析构函数。在 C++ 中,当对象被销毁时,会自动启用对析构函数的支持。

多重继承

Java 不提供多重继承,至少不像 C++ 那样。多重继承是 C++ 的一项功能,其中一个类可以从多个类继承。

结论

这就是 Java 和 C++ 之间的全部区别。Java 语言非常适合商业项目。它在大公司中需求很大,因为维护和重构现有项目始终保持相关性 - 至少在银行和其他金融机构中如此。您可以很好地处理跨平台开发,并使用它为任何平台创建系统。然而,与 Java 相比,C++ 还有其他优点,例如支持方法重载和运算符重载、支持析构函数等。

Java 中的私有构造函数

来源:Dev.to Java 中的构造函数是一种特殊类型的方法,其名称与类名或文件名相同。当我们调用一个对象时,总是会调用内部构造函数。主要用于初始化对象的状态或者类中变量的值。 喝咖啡休息#118。 C++ 和 Java 语言有什么区别。 Java 中的私有构造函数 - 2现在让我们看看什么是私有构造函数。Java 允许我们根据使用情况改变方法。那么,我们可以像其他方法一样将构造函数设为私有吗?如果是这样,那么私有构造函数有什么用呢?答案:是的,我们可以使用 private 访问说明符将 Java 中的构造函数声明为私有构造函数。但请记住,如果我们将构造函数声明为私有,那么我们将无法创建该类的对象。相反,我们可以在单例设计模式中使用这个私有构造函数。私有构造函数的规则:
  • 它不允许一个类成为子类。
  • 不允许您在类之外创建对象。
  • 如果一个类有一个私有构造函数,那么当我们尝试扩展该类时,就会发生编译时错误。
  • 我们无法从任何其他类访问私有构造函数。
  • 如果我们的类具有所有常量方法,我们可以使用私有构造函数。
  • 如果所有方法都是静态的,我们可以使用私有构造函数。
  • 如果对象未初始化,我们可以使用公共函数来调用私有构造函数。
  • 如果该对象已经初始化,我们只能返回该对象的实例。
public class PrivateConstructorDemo
{
     //creating an instance variable of the class Tester
     private static PrivateConstructorDemo pcd;
     //creating a private constructor
     private PrivateConstructorDemo()
     {
     }
    //creating a static method named getInstance()
    public static PrivateConstructorDemo getInstance()
    {
       if(pcd == null)
       {
        //creating a constructor of the class
        pcd = new PrivateConstructorDemo();
       }
     return pcd;
    }
    //main() method
    public static void main(String args[])
    {
     PrivateConstructorDemo pcd = PrivateConstructorDemo.getInstance();
    PrivateConstructorDemo pcd1 = PrivateConstructorDemo.getInstance();
    //invokes the getInstance() method and prints the corresponding result
    System.out.println(pcd.equals(pcd1));
   }
}
结论:
真的
现在让我们看看私有构造函数的用例。使用私有构造函数的主要目的是限制对象的创建。私有构造函数也用于实现单例设计模式。使用私有构造函数的选项如下:
  • 它可以与仅静态成员的类一起使用。
  • 它可以与静态实用程序或常量类一起使用。
  • 它还可以用于创建单例类。
  • 它可以用于命名,例如使用工厂方法创建。
  • 它还用于避免子类化。
  • 它包括工厂方法。
我希望您通过这篇文章了解更多有关 Java 构造函数的知识。
评论
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION