Java和C有什么区别,应该学习Java还是C

简介:

java室友c 发展而来,与c 有类似之处,不过java更加清晰、规模较小,容易学习。经过高手们的加工,java从根本上解决了c 的固有缺陷,成为了一种新的完全面向对象的语言。

java与c 类似,但也存在多处不同之处,当然,如果有c基础,学习java会更加容易。

1000

多重继承

C 支持多重继承,它允许多父类派生一个子类。也就是说,一个类允许继承多个父类。尽管多重继承功能很强,但使用复杂,而且会引起许多麻烦,编译程序实现它也很不容易。所以 Java 不支持多重继承,但允许一个类实现多个接口。可见,Java 既实现了 C 多重继承的功能,又避免了 C 的许多缺陷。

指针

Java 没有指针的概念,从而有效地防止了在 C/C 语言中,容易出现的指针操作失误(如指针悬空所造成的系统崩溃)。在 C/C 中,指针操作内存时,经常会出现错误。在Java 中没有指针,更有利于 Java 程序的安全。

如果你想学习Java可以来这个群,首先是二二零,中间是一四二,最后是九零六,里面可以学习和交流,也有资料可以下载。

1000

数据类型

Java 是完全面向对象的语言,所有方法和数据都必须是类的一部分。除了基本数据类型之外,其余类型的数据都作为对象型数据。例如对象型数据包括字符串和数组。类将数据和方法结合起来,把它们封装在其中,这样每个对象都可实现具有自己特点的行为。而 C 将函数和变量定义为全局的,然后再来调用这些函数和变量,从而增加了程序的负担。此外,Java 还取消了 C/C 中的结构和联合,使编译程序更简洁。

如果你想学习C/C++可以来这个群,首先是三三零,中间是八五九,最后是七六六,里面可以学习和交流也有资料可以下载。

1000

Java 不支持缺省函数参数,而 C 支持。

在 C 中,代码组织在函数中,函数可以访问程序的全局变量。C 增加了类,提供了类算法,该算法是与类相连的函数,C 类方法与 Java 类方法十分相似。由于 C 仍然支持 C,所以 C 程序中仍然可以使用 C 的函数,结果导致函数和方法混合使用,使得 C 程序比较混乱。

1000

类型转换

在 C 和 C 中,有时出现数据类型的隐含转换,这就涉及了自动强制类型转换问题。例如,在 C 中可将一个浮点值赋予整型变量,并去掉其尾数。Java 不支持 C 中的自动强制类型转换,如果需要,必须由程序显式进行强制类型转换。


相关文章
|
10天前
|
消息中间件 前端开发 Java
java学习路径
【4月更文挑战第9天】java学习路径
17 1
|
30天前
|
安全 Java 程序员
学习Java类加载机制
在Java的世界里,每一个类或者接口,在经历编译器后,都会生成一个个.class文件。
18 0
|
1月前
|
Java
Java isBlank和isEmpty的区别
JavaisBlank和isEmpty的区别
17 0
|
1月前
|
Java 关系型数据库 MySQL
在Java的反射中,Class.forName和ClassLoader的区别
在Java的反射中,Class.forName和ClassLoader的区别
35 3
|
1月前
|
Java Spring 容器
[JavaWeb]——过滤器filter与拦截器Interceptor的使用、执行过程、区别
[JavaWeb]——过滤器filter与拦截器Interceptor的使用、执行过程、区别
|
10天前
|
设计模式 前端开发 安全
Java是一种广泛使用的编程语言,其学习路径可以大致分为以下几个阶段
【4月更文挑战第9天】Java是一种广泛使用的编程语言,其学习路径可以大致分为以下几个阶段
15 1
|
1天前
|
JavaScript Java 测试技术
基于Java的精品课程在线学习系统的设计与实现(源码+lw+部署文档+讲解等)
基于Java的精品课程在线学习系统的设计与实现(源码+lw+部署文档+讲解等)
9 1
|
1天前
|
JavaScript Java 测试技术
基于Java的中文学习系统的设计与实现(源码+lw+部署文档+讲解等)
基于Java的中文学习系统的设计与实现(源码+lw+部署文档+讲解等)
8 0
|
7天前
|
Java 存储
键值之道:深入学习Java中强大的HashMap(二)
键值之道:深入学习Java中强大的HashMap
10 0
键值之道:深入学习Java中强大的HashMap(二)
|
9天前
|
JavaScript Java 测试技术
基于Java的网络类课程思政学习系统的设计与实现(源码+lw+部署文档+讲解等)
基于Java的网络类课程思政学习系统的设计与实现(源码+lw+部署文档+讲解等)
25 0
基于Java的网络类课程思政学习系统的设计与实现(源码+lw+部署文档+讲解等)