首页 > 编程语言 >Java语言特性

Java语言特性

时间:2023-04-22 14:01:21浏览次数:36  
标签:Java 语言 不同 接口 编译 特性 源代码

1.简单

相对于c/c++来说简单

2.面向对象

面向过程:按照步骤执行
面向对象:通过对象来完成操作,三大特征:封装,继承,多态
1.封装:把数据和操作数据的方法绑定起来,对数据的访问只能通过已定义的接口
2.继承:从已有类得到继承信息创建新类的过程
3.多态:允许不同子类型的对象对同一消息作出不同的响应

3.分布式

Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络编程的类库。基于网络多主机协作。

4.健壮

强类型机制,异常处理,垃圾自动回收(GC)。安全的指针:引用

5.安全

Java通常被用在网络环境中,Java提供了一个安全机制以防恶意代码的攻击。如:安全防范机制(类ClassLoader),如分配不同的命名空间以防替代本地的同名类、字节代码检查。所有的.class文件必须通过类加载器的安全检查。

6.跨平台

Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件),然后可以在实现这个Java平台(jvm)的任何系统中运行。

7.性能好

Java是编译型语言,程序执行之前,统一编译,生成可执行文件,运行时直接执行可执行文件,一次编译,无限次运行,不依赖源文件,性能好。由于不同平台可执行文件不同,编译型语言难以实现在不同操作系统间随意切换,可移植性较差。
解释型语言,不需要编译,在程序运行时,一边执行一边转换,先翻译成中间代码,再由解释器对中间代码进行解释运行,每执行一次都要翻译一次,效率低,依赖源文件。一次编写,到处运行,每次执行都要重新转换源代码,只需要解释器根据操作系统的不同将源代码转换为不同的机器码。相同的源代码,就可以实现在不同的平台上运行,跨平台性好。

8.多线程

最大化利用CPU,提供更高的并发量。
多线程几种实现方法:
1.继承Thread类
2.实现Runnable接口,无返回值
3.实现Callable接口,有返回值
4.线程池

标签:Java,语言,不同,接口,编译,特性,源代码
From: https://www.cnblogs.com/insilently/p/17342958.html

相关文章

  • 力扣——21.合并两个有序链表(c语言)
    title:力扣——21.合并两个有序链表(c语言)将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例:输入:1->2->4,1->3->4输出:1->1->2->3->4->41、递归实现:/***Definitionforsingly-linkedlist.*structListNode{......
  • 力扣——83.删除排序链表中的重复元素(c语言)
    title:力扣——83.删除排序链表中的重复元素(c语言)题目描述:给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。示例1:输入:1->1->2输出:1->2示例2:输入:1->1->2->3->3输出:1->2->3代码如下:/***Definitionforsingly-linkedlist.*structListNode{*......
  • 力扣——121.买卖股票的最佳时机(C语言)
    title:力扣——121.买卖股票的最佳时机(C语言)题目描述:给定一个数组,它的第i个元素是一支给定股票第i天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票一次),设计一个算法来计算你所能获取的最大利润。注意:你不能在买入股票前卖出股票。示例1:输入:[7,1,5,3,6,......
  • 力扣——240.搜索二维数组II(c语言)
    title:力扣——240.搜索二维数组II(c语言)同《剑指offer》04题目描述:编写一个高效的算法来搜索mxn矩阵matrix中的一个目标值target。该矩阵具有以下特性:每行的元素从左到右升序排列。每列的元素从上到下升序排列。示例1:输入:matrix=[[1,4,7,11,15],[2,5,8,12,19],......
  • 力扣——5.最长回文子串(c语言)
    题目描述:给定一个字符串s,找到s中最长的回文子串。你可以假设s的最大长度为1000。示例1:输入:"babad"输出:"bab"注意:"aba"也是一个有效答案。示例2:输入:"cbbd"输出:"bb"1、思路1:动态规划对于一个子串而言,如果它是回文子串,并且长度大于2,那么将它首尾两个字......
  • 理解Java程序的执行
    main方法publicclassSolution{publicstaticvoidmain(String[]args){Personperson=newPerson();person.hello();}}classPerson{publicvoidhello(){System.out.println("hello");}}源文件名是Solu......
  • 理解Java程序的执行
    main方法publicclassSolution{publicstaticvoidmain(String[]args){Personperson=newPerson();person.hello();}}classPerson{publicvoidhello(){System.out.println("hello");}}源文件名是Solu......
  • C语言和C++的switch语句用法
    C语言和C++的switch语句用法是相似的,但在一些细节上有所不同。在C语言中,switch语句的用法如下:switch(expression){  caseconstant1:    //dosomething    break;  caseconstant2:    //dosomething    break;  //...  ......
  • Java 计算两个 LocalDateTime 类型的变量之间差的小时数,保留4位小数
    为了计算两个LocalDateTime对象之间相差的小时数,并精确到小数点后4位,您可以使用Duration类。以下是一个示例:importjava.time.LocalDateTime;importjava.time.Duration;publicclassMain{publicstaticvoidmain(String[]args){LocalDateTimea=Loc......
  • C语言常见的加密库
    C语言加密库有很多,以下是一些常见的加密库:OpenSSL:一个功能强大的开源加密库,提供了各种加密算法和协议的实现,包括对称加密、公钥加密、数字签名和证书管理等。Libsodium:一个现代化的加密库,提供了高级加密、公钥加密、哈希函数等,被广泛用于网络通信、存储和加密货币等领域。Bota......