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.每个对象都是由其它对象所构成 ...
随机推荐
- RabbitMQ install (Ubuntu)
1. key 1) Online way apt-key adv --keyserver "hkps.pool.sks-keyservers.net" --recv-keys &q ...
- solr 打分和排序机制(转载)
以下来自solr in action. 包含: 词项频次.查询词项出现在当前查询文档中的次数. 反向文档频次.查询词项出现在所有文档总的次数. 此项权重. 标准化因子: 字段规范: 文档权重. 字段权 ...
- java正则表达式替换空格和换行符
public class StringUtil { public static String getStringNoBlank(String str) { if(s ...
- 前端基础-JavaScript
转载地址:http://www.cnblogs.com/yuanchenqi/articles/6893904.html 一.Javascript结构 ECMAScript ECMAScript ...
- WPF Combobox选中事件
/// <summary> /// 选中事件 /// </summary> /// <param name="sender"></para ...
- Android2.2+opencv3.1配置实现
来实习什么都要自己干,不仅仅要写算法,还要再Android上面跑起来.... 弄了三天才搞好,就因为一点点失误!!! 第一步:安装Android Studio2.2 安装opencv3.1 下载 ...
- activiti源代码的细节
由于activiti-explorer-5.14的web演示程序使用的是vaadin服务器端ui组件,程序关键点找起来还是有些麻烦,vaadin的这种web框架,就是不需要专门美术界面人员,只需要程序 ...
- oracle 多行合并为一行
sys_connect_by_path select i,ltrim(max(sys_connect_by_path(a,',')),',') afrom(select i,a,d,min(d) ov ...
- Oracle数据库基础教程
Oracle基础 简介 数据库实例 表空间 登录身份和角色 用户和授权 数据类型 数据操作 导入数据库 一.Oracle基础: 1.简介 Oracle创建数据库不能像SQL Server那样用一个简单 ...
- [Writeup]百度一下,你就知道
[Writeup]百度一下,你就知道 谢邀@宋雨田 人在607,刚下床 育才上网,信号不好 实名diss,能人宋雷 ---------------------- 以下是原答案 ------------ ...