1.c++、java和python都是面向对象的编程语言,但是c++和java都是强类型语言,而python是一种弱类型语言

2.垃圾回收机制:c++需要程序员收到回收,而java和python都有自己的垃圾回收机制GC。具体两者又有不同,python的垃圾收集机制主要是用的是引用计数方式。

3.c和java中变量的存储是真实值,而python总存储的是引用,所以python不用声明类型名称,它的输入均默认为字符串。

4.c++中用const来声明常量,java中使用final来声明,python中没有常量。

5.for循环语句结构不同

例:求1-5的算数和

(1)Java:

public class test {
public static void main(String[] args) {
// TODO Auto-generated method stub
int sum = 0;
for(int i=1;i<6;i++) {
sum+=i;
}
System.out.println(sum);
}
}

(2)Python:

i=1
sum=0
for i in range(6):
    sum+=i
print(sum)
(3)c/c++
#include<iostream>
using namespace std;
void main()
{
int sum = 0;
for (int i = 0; i < 6; i++)
{
sum += i;
}
cout << sum;
}

6.输入语句不同

(1)Python

a=input()
print(a)

(2)Java

import java.util.Scanner;
public class test {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
String name=sc.nextLine();
System.out.println(name);
}
}

(3)C++

string a;
cin >> a;
cout << a;

(4)C

char str[5] = {0};
scanf("%s",str);
printf("%s",str);

7.输出语句不同

(1)Python

print("python输出语句")

(2)Java

System.out.println("java输出语句");

(3)c++

#include<iostream>
using namespace std;
void main()
{
cout << "c++输出方式"<<endl;
}

(4)C

printf("%s","c输出语句");

8.c++和python中0代表false,其他的整数代表true,可用在if判断中,而java不行。

(1)Python

if(1):
print("python输出语句")

(2)Java

if(1)
System.out.println("java输出语句");

代码不符合语法规则,不能执行

(3)C++

if (1)
cout << "c++"<<endl;

9.计算精度:计算1/1000时,python和c++的结果都是0.001,java得到的结果是0。

(1)Python

print(1/(10**3))

(2)Java

System.out.println(1/1000);

(3)C/c++

cout << 1/pow(10,3)<<endl;

10.字符串比对方法不同

(1)Python中==是判断两个值是否相等

i='mql'
m='mql'
if i==m:
    print('yes')
else:
print('no')

(2)Java中复合数据类型比对用.equals()方法,用==是在比对两个对象的地址是否相同。

String str1 = new String("java");
String str2 = "java";
System.out.println("str1==str2: " + (str1==str2));
System.out.println("str1.equals(str2): " + str1.equals(str2));

(3)c++中使用string类的compare函数,如果值相等返回0,若字符串 str1 按字典顺序要先于 str2,则返回负值;反之,则返回正值。

string str1="mql";
string str2 = "mql";
int result = str1.compare(str2);
cout << result;

11.异常捕获处理结构:java和c++使用的是try catch结构,python使用的是try except结构。

(1)Python

try:
    print(1/0)
except Exception as e:
    print("除数不能为0")

(2)Java

try {
System.out.println(1/0);
} catch (Exception e) {
// TODO: handle exception
System.out.println("除数不能为0");
}

(3)c++

void main()
{
int a = 0;
try{
if (a==0)
throw "除数不能为0";
}
catch (const char* msg)
{
cout << msg << endl;
}
}

12.判断结构不同

(1)Python

a="true"
b="true"
if a==b:

    print("两个值相等")

(2)Java

String a="true";
String b="true";
if(a.equals(b))
{
System.out.println("两值相等");
}

(3)c/c++

string a = "true";
string b = "true";
if (a.compare(b)==0)
{
cout << "两个值相等";
}