首页 > 其他分享 >10.9日

10.9日

时间:2024-10-09 22:22:12浏览次数:7  
标签:Java name 10.9 JavaScript Animal public 函数

. 定义与语法
JavaScript:

函数可以使用关键字 function 定义,也可以使用箭头函数(ES6+):
javascript
function myFunction(a, b) {
return a + b;
}

const myArrowFunction = (a, b) => a + b;
Java:

函数是类中定义的方法,必须指定返回类型,并且所有的方法都属于某个类:
java
public class MyClass {
public int myMethod(int a, int b) {
return a + b;
}
}
2. 作用域与闭包
JavaScript:

支持闭包,使得在函数内部定义的函数可以访问外部函数的变量。
Java:

不支持闭包,局部变量的作用域仅限于其定义的代码块。
3. 参数类型与重载
JavaScript:

是动态类型语言,参数无需指定类型,并且函数可以接受可变数量的参数:
javascript
function myFunction(...args) {
return args.reduce((sum, value) => sum + value, 0);
}
Java:

是静态类型语言,函数参数类型必须显式声明,并支持方法重载(可以定义多个同名方法,参数不同):
java
public int myMethod(int a, int b) { ... }
public double myMethod(double a, double b) { ... }
4. 对象与上下文
JavaScript:

函数可以作为对象的属性,并且 this 的值取决于函数的调用方式。
Java:

this 关键词指向当前类的实例,固定于类的上下文。
5. 高阶函数
JavaScript:

非常支持高阶函数(可以接受函数作为参数或返回函数),在函数式编程中具有广泛应用。
Java:

虽然 Java 8 引入了 lambda 表达式,使得函数式编程成为可能,但它仍然主要面向对象。
对象的定义和创建
JavaScript:

JavaScript 中的对象是动态的,可以使用对象字面量创建,且不需要提前定义类。
javascript
const person = {
name: 'Alice',
age: 30
};
Java:

Java 是面向对象的编程语言,必须先定义类,再创建对象。例如:
java
public class Person {
String name;
int age;
}

Person alice = new Person();
alice.name = "Alice";
alice.age = 30;
2. 类型系统
JavaScript:

JavaScript 是动态类型语言,变量的类型可以在运行时改变。
Java:

Java 是静态类型语言,变量的类型在编译时已确定,必须在声明时指定类型。
3. 继承机制
JavaScript:

使用原型继承,不同对象可以共享同一个原型。
javascript
const animal = {
speak: function() {
console.log('Animal speaks');
}
};

const dog = Object.create(animal);
dog.speak(); // 输出: Animal speaks
Java:

使用类的继承,通过关键字 extends 来实现。
java
class Animal {
void speak() {
System.out.println("Animal speaks");
}
}

class Dog extends Animal {
void speak() {
System.out.println("Dog barks");
}
}
4. 构造函数与类
JavaScript:

可以使用构造函数创建对象,也可以使用 ES6 的类语法,语法上更灵活,但基础是原型。
javascript
function Animal(name) {
this.name = name;
}

const dog = new Animal('Dog');
Java:

类中总是有构造器,构造器用于初始化对象的状态。
java
public class Animal {
String name;

public Animal(String name) {
    this.name = name;
}

}

Animal dog = new Animal("Dog");
5. 方法定义
JavaScript:

方法可以直接在对象字面量中定义,也可以在构造函数或类中定义,可以是任意值类型。
Java:

方法需在类中定义,且有明确的返回类型。
6. 访问修饰符
JavaScript:

没有传统意义上的访问修饰符,但可以通过命名约定和闭包来模拟私有属性。
Java:

具有严格的访问控制,使用 public、protected 和 private 修饰符来控制对类成员的访问。

标签:Java,name,10.9,JavaScript,Animal,public,函数
From: https://www.cnblogs.com/sword861417845/p/18455316

相关文章

  • 2024.10.9 LGJ Round
    B对于所有\(x\in[0,n],y\in[0,m]\),求执行\(x\getsx+y,y\getsx+y\)若干次后满足\(x=k\)的双元组个数。这个题充分体现我的唐氏。具体地枚举\(x,y\)分别被算了多少次,系数是斐波那契数列,所以项数很少。然后转化为求\(k_1x+k_2y=k\)的方案数,这个我非常唐不会求。只需......
  • 2024.10.9训练记录
    下午提高组模拟省流:又被lyy吊打了晚上订正A神秘猜结论题,场上少猜了一点挂了\(18\)分,遗憾。结论:\(ans\in[0,3]\)\(0/1\)可以直接判。\(1\)的情况就是存在一个前缀\(a_{1,i}\)满足出现的数是\(1\)到\(i\)。\(3\)的情况仅当\(a_1=n\)且\(a_n=1\)。场上......
  • 2024CSP前集训10.9
    不想学东西了,,,T1普及题,之前还做过,没啥好说的。T295kmp不对,挂了5分。莫队奇偶性优化还是要加的。对\(s_{i,\dots,n}\)跑kmp,也就是跑了\(n\)遍,答案是: while(m--){ intl=read(),r=read(); intres=0; for(inti=l;i<=r;i++) for(intj=......
  • 10.9
    不会数学真是抱歉了!不会dp真是抱歉了!说好的\(NOIP\)模拟赛呢,开幕给我端上来这么一坨。明天有体育课。A.树上独立集贪心,设\(f_i\)代表\(i\)子树内有多少个未匹配点,若\(\sum\limits_{v\inson_u}f_v>0\)则\(f_i=\sum\limits_{v\inson_u}f_v-1\),否则\(f_i=1\),若......
  • 2024.10.9 总结
    决定以后分开写,显的博客多。A:首先考虑对给定树计算权值,假设我们已经知道了一个权值最小的划分,那么可以通过调整得到新的划分使得权值不变,目的是简化虚树的形态。考虑该划分中任意一个集合形成的虚树,有两种情况:如果根节点\(r\)存在于任何一个最大独立集中,即\(f_{r,1}>f_{r,0}......
  • 10.9(NOIP 模拟赛 #10)
    2025--炼石计划--10月06日--NOIP模拟赛#10【订正】-比赛-梦熊联盟(mna.wang)复盘T1计数题,感觉不难。用样例模拟了一下,找到一个较优的去重方式。然后过了样例。此时8:10。T2好像又是矩阵加速。想正解。想不出来,只能做到\(\mathcalO(n^6\logk)\)的复杂度。......
  • Spire.PDF for .NET 10.9.0
    Spire.PDFfor.NETisaprofessionalPDFAPIappliedtocreating,writing,editing,handlingandreadingPDFfileswithoutanyexternaldependencieswithin.NET(C#,VB.NET,ASP.NET,.NETCore,.NET5.0,.NET6.0,.NET7.0,MonoAndroidandXamarin.iOS)......
  • 第十章 【后端】环境准备(10.9)——Navicat
    10.9NavicatNavicatPremium官网下载下载地址:https://www.navicat.com.cn/download/navicat-premium-lite安装一路“下一步”即可。连接`MySql’......
  • Spire.PDF for Java Version:10.9.0
    Spire.PDFforJavaisaPDFAPIthatenablesJavaapplicationstoread,writeandsavePDFdocumentswithoutusingAdobeAcrobat.UsingthisJavaPDFcomponent,developersandprogrammerscanimplementrichcapabilitiestocreatePDFfilesfromscratchor......
  • Microsoft Remote Desktop for Mac(微软远程连接软件)v10.9.7直装版
    MicrosoftRemoteDesktop是微软开发的远程连接工具,支持Windows、macOS、iOS和Android,允许用户通过互联网远程访问其他计算机的桌面和应用程序,实现跨设备文件共享。同时,它提供网络层身份验证、数据加密和多重身份验证等安全功能,确保用户隐私和数据安全。MicrosoftRemoteDesk......