去年,我重新审视了编程,休息后专注于Java。 我的目标是比Python更具挑战性的语言。我将3-4个月的时间用于掌握Java的核心概念:其操作机制,面向对象的编程(OOP),内存管理和通过JDBC的数据库连接。
最近,我从JavaScript开始过渡到Web开发。几天后,探索JavaScript,我渴望分享我对Java和JavaScript之间关键区别的观察和见解,以及如何进行平滑的过渡。
[2最引人注目的区别在于数据类型声明。与Java的静态键入不同,JavaScript是动态键入的。尽管两种方法都有优点和缺点,但我们将重点介绍关键区别:JavaScript的单线线程自然与Java的多线程功能对比。 [2
想象一下Java是一位细致的,面向细节的士兵。 说明必须精确,指定任务及其理由。相反,JavaScript类似于一个轻松的朋友;它有效地完成任务而没有过多细节 - 简单地提供任务,并处理执行。 [2 [2[2 公共静态void main(string [] args){ int a = 5; int b = 6; int结果= a b; system.out.println(结果); } }
以下代码段说明了类和方法创建中的句法差异:
[2 [2 字符串名称; 人(字符串名称){ this.name = name; } void engret(){ system.out.println(“ hello”,name); } 公共静态void main(string [] args){ 人=新人(“约翰”); person.greet(); } }
[2
[2
构造函数(名称){
this.name = name;
}
engret(){
console.log(`Hello,$ {this.name}`);
}
}
const Person =新人(“ John”);
person.greet();
[2
名称:“约翰”,
问候:function(){
console.log(`Hello,$ {this.name}`);
}
};
person.greet();
[2
继承语法在两种语言上都显示出相似之处。
[2
[2
void sound(){
system.out.println(“一些声音”);
}
}
班狗扩展动物{
void sound(){
system.out.println(“ bark”);
}
}
公共类Main {
公共静态void main(string [] args){
狗狗=新狗();
dog.sound();
}
}
[2
[2
声音() {
console.log(“一些声音”);
}
}
班狗扩展动物{
声音() {
console.log(“ bark”);
}
}
const狗=新狗();
dog.sound();
[2
JavaScript的封装比Java的封装更弱;它缺乏访问修饰符(
private protected
, public
)。 但是,在ES2022中引入的(私有字段)表示一定程度的私有字段控制:
[2
#姓名;
构造函数(名称){
这个。#name = name;
}
engret(){
console.log(`Hello,$ {this。#name}`);
}
}
const Person =新人(“ John”);
person.greet();
console.log(person。#name); //错误:必须在封闭类 JavaScript由于其解释性质和缺乏编译时间检查而不支持过载。 但是,支持方法覆盖:
[2
声音() {
console.log(“一些声音”);
}
}
班狗扩展动物{
声音() {
console.log(“ bark”);
}
}
const狗=新狗();
dog.sound(); // bark
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3