C++与java编程区别(一)
转载自http://blog.sina.com.cn/s/blog_75f4e17c0101295o.html
C++ HelloWorld
main.cpp
#include< iostream>
using namespace std;
class HelloWorld
{
public:
void say()
{
cout<< "HelloWorld"<<endl;
}
};
class HelloWorld_other
{
public:
void say()
{
cout <<"HelloWorld_ other "<<endl;
}
};
void main()
{
HelloWorld hw;
hw.say();
cout<< "HelloWorld_other"<<endl;
}
Java HelloWord
HelloWorld.java
public class HelloWorld
{
float m_fNum = 0; //可以直接在类中声名并初始化,C++不行
public static void main(String[] args) //java入口函数格式,args这个名可以随意取
{
System.out.println("Hello Word");
Test otest = new Test();
}
}
class Test {}
区别:
1. Java类前有了标识符
2. main函数移到了类中,C/C++中main为主函数不在任何类中
3. Java类名必需与文件名一致,C++无此要求,文件名可以与类名不同。(Java有多个类的时候,public类的类名与原文件名一致,或者说public类的类名就是源文件名)
4. Java一个源文件中只能有一个public类,其它控制权限的类可以有多个,C++中类没有权限控制,只有方法和属性权限。
5. Java类之间不用”;”号分开,而C++类之间必需要用 “;”号隔开。
Java类之间的使用不用遵循先声明再使用的规则,而C++必需先声名才可以使用。class Test {}这个类可以在HelloWorld类前也可以在后并不影响使用。原因:Java会把一个源文件的多个类都分别生成.class文件(HelloWorld.class与Test.class),调用时候直接去找相应的.class进行装配。而C++直接生成.obj文件,所有的类都在一个文件里。
6. Java的标识符由字母,数字,下划线,$组成,可以以字母,下划线,$开头,而C++ 字母,数字,下划线组成,以字母,下划线开头。
7. Java中的常量标识符为final,C++中为const。
8. Java类外(与类对应的大括号外面)不能有变量的声明,而C++可以,做为C++的全局变量。这也体现了Java是纯面向对向的语言。
9. 数据类型角度讲,Java所有数值类型都是带符号的,C++可以有无符号类型数据
10. Java的boolean类型不可以转换为其他的数据类型,其它数据类型也不能转换成boolean。(Java中boolean类型只有两个值true false)。
- Java类中声明一个变量时可以直接初始化(如果不初始化会自动初始化为0或false,但函数内部定义的局部变量不会自动给初始化的),而C++不行。
- Java语言中除了基本类型之外的变量类型都称之为引用类型,C++中引用是型由&标出
C++与java编程区别(一)的更多相关文章
- 如何学好JAVA编程
我的思路: 1.我觉得先学学JSP,用纯JSP做个日记本简单的小系统,纯粹从语言层面上了解一些基 础知识,把tomcat玩熟了,就用记事本编就行,主要是熟悉,能够理解jsp运行机制.然 ...
- Java编程思想重点笔记(Java开发必看)
Java编程思想重点笔记(Java开发必看) Java编程思想,Java学习必读经典,不管是初学者还是大牛都值得一读,这里总结书中的重点知识,这些知识不仅经常出现在各大知名公司的笔试面试过程中,而 ...
- 《java编程思想》读书笔记(一)开篇&第五章(1)
2017 ---新篇章 今天终于找到阅读<java编程思想>这本书方法了,表示打开了一个新世界. 第一章:对象导论 内容不多但也有20页,主要是对整本书的一个概括.因为已经有过完整JAV ...
- Java编程思想——初始化与清理
PS:最近一直忙于项目开发..所以一直没有写博客..趁着空闲期间来一发.. 学习内容: 1.初始化 2.清理 1.初始化 虽然自己的Java基础还是比较良好的..但是在解读编程思想的时候还是发现了 ...
- Java 编程入门(词汇表)
抽象类(abstract class):抽象类不能创建对象,主要用来创建子类.Java中的抽象类使用 abstract 修饰符定义. 抽象数据类型(abstract data type ADT):抽象 ...
- java 编程时候的性能调优
一.避免在循环条件中使用复杂表达式 在不做编译优化的情况下,在循环中,循环条件会被反复计算,如果不使用复杂表达式,而使循环条件值不变的话,程序将会运行的更快. 例子: import java.util ...
- java编程思想
Java编程思想,Java学习必读经典,不管是初学者还是大牛都值得一读,这里总结书中的重点知识,这些知识不仅经常出现在各大知名公司的笔试面试过程中,而且在大型项目开发中也是常用的知识,既有简单的概念理 ...
- Java编程思想(11~17)
[注:此博客旨在从<Java编程思想>这本书的目录结构上来检验自己的Java基础知识,只为笔记之用] 第十一章 持有对象 11.1 泛型和类型安全的容器>eg: List<St ...
- Java编程思想 (1~10)
[注:此博客旨在从<Java编程思想>这本书的目录结构上来检验自己的Java基础知识,只为笔记之用] 第一章 对象导论 1.万物皆对象2.程序就是对象的集合3.每个对象都是由其它对象所构成 ...
随机推荐
- 利用WordPress REST API 开发微信小程序从入门到放弃
自从我发布并开源WordPress版微信小程序以来,很多WordPress网站的站长问有关程序开发的问题,其实在文章:<用微信小程序连接WordPress网站>讲述过一些基本的要点,不过仍 ...
- cocos设置 相机矩阵和投影矩阵 源码浅析
在cocos中,最后设置视口大小,相机矩阵,裁剪矩阵是在setProjection方法中,源码如下: void Director::setProjection(Projection projectio ...
- flask-日料网站搭建-ajax传值+返回json字符串
引言:想使用python的flask框架搭建一个日料网站,主要包含web架构,静态页面,后台系统,交互,今天教大家实现ajax操作,返回json. 本节知识:jquery,json,ajax pyth ...
- Fragment重叠,使用show和hide控制显示和隐藏界面重叠问题;
Fragment重叠原因: App因某种原因崩溃自动重启,或App长期在后台运行Fragment依赖的activity被回收等等原因:当系统内存不足,Fragment 的依附Activity 被回收的 ...
- C#winform抓取百度,Google搜索关键词结果
基于网站seo,做了一采集百度和Google搜索关键字结果的采集.在这里与大家分享一下 先看先效果图 代码附加: 1 private void baidu_Click(object sender ...
- mysql where in形式存储过程如何传递带有单引号的入参
对于存储过程或者函数,我们通常都有这样的一个需求,传递一个参数,输出一个结果.如:我传递一个账号,返回这个账号所拥有的权限.但是如果这个需求改了,我要传递多个账号,获取这些账号权限,但是账号的个数不限 ...
- Session原理
详情移步:https://www.jianshu.com/p/2b7c10291aad
- python-路径处理path
#-*- coding:utf-8 -*- # file: class_01_path.py #本次学习:OS模块--处理路径 #F:\pythonzhm\study_181112 import os ...
- 关于W8.1不能安装VS2015(包括2017等)
电脑本来是W7 64位+OPENCV3.1,今天突然系统崩溃了,然后感觉W7过时了遇到很多问题直接系统崩溃还得了啊,干脆装了一个W8.1了. 好吧~~本来想直接说问题的,干脆先把装系统给记录一下--& ...
- linux中使用pip命令遇到的一些问题
一 安装readline包之后python3.6导入模块异常退出 Type "help", "copyright", "credits" o ...