前端进阶全栈计划:Java基础语法

请添加图片描述

前言

本教程旨在帮助初学者系统地掌握Java的基础知识。我们将从Java的基本语法开始,逐步深入到面向对象编程、异常处理、多线程编程等核心概念。无论你是编程新手,还是希望夯实基础的开发者,这份指南都将带你走进Java的世界,打下坚实的编程基础。

1. 基本语法

  • 变量与数据类型:理解不同的数据类型(如 int、double、boolean、char 等),以及如何声明和初始化变量。
  int number = 10;
  double price = 29.99;
  boolean isTrue = true;
  char letter = 'A';

2. 操作符

  • 算术操作符:加(+)、减(-)、乘(*)、除(/)和取模(%)。
  int sum = 5 + 3;
  int difference = 5 - 3;
  int product = 5 * 3;
  int quotient = 5 / 3;
  int remainder = 5 % 3;
  • 比较操作符:等于(==)、不等于(!=)、大于(>)、小于(<)、大于等于(>=)、小于等于(<=)。
  boolean isEqual = (5 == 3);
  boolean isNotEqual = (5 != 3);
  boolean isGreater = (5 > 3);
  • 逻辑操作符:与(&&)、或(||)、非(!)。
  boolean andResult = (true && false);
  boolean orResult = (true || false);
  boolean notResult = !true;

3. 控制结构

  • 条件语句ifelse ifelseswitch
  if (condition) {
      // code block
  } else if (anotherCondition) {
      // another code block
  } else {
      // another code block
  }

  switch (expression) {
      case value1:
          // code block
          break;
      case value2:
          // code block
          break;
      default:
          // code block
  }
  • 循环结构forwhiledo-while
  for (int i = 0; i < 10; i++) {
      // code block
  }

  int j = 0;
  while (j < 10) {
      // code block
      j++;
  }

  int k = 0;
  do {
      // code block
      k++;
  } while (k < 10);

4. 方法

  • 方法定义与调用:如何定义方法,并在程序中调用它们。
  public int sum(int a, int b) {
      return a + b;
  }

  public static void main(String[] args) {
      MyClass myObject = new MyClass();
      int result = myObject.sum(5, 3);
  }

5. 面向对象编程(OOP)

  • 类与对象:理解类的定义和对象的创建。
  public class Car {
      // attributes
      String color;
      int maxSpeed;

      // methods
      public void display() {
          System.out.println("Car color: " + color);
          System.out.println("Max speed: " + maxSpeed);
      }
  }
  • 构造方法:如何定义和使用构造方法初始化对象。
  public class Car {
      String color;
      int maxSpeed;

      // Constructor
      public Car(String color, int maxSpeed) {
          this.color = color;
          this.maxSpeed = maxSpeed;
      }
  }

  Car myCar = new Car("Red", 180);
  • 封装:使用修饰符(privatepublicprotected)保护类的属性。
  public class Employee {
      private String name;
      private double salary;

      // Getter and Setter methods
      public String getName() {
          return name;
      }

      public void setName(String name) {
          this.name = name;
      }

      public double getSalary() {
          return salary;
      }

      public void setSalary(double salary) {
          this.salary = salary;
      }
  }
  • 继承:通过 extends 关键字实现类的继承。
  public class Animal {
      void eat() {
          System.out.println("This animal eats food.");
      }
  }

  public class Dog extends Animal {
      void bark() {
          System.out.println("The dog barks");
      }
  }

  Dog myDog = new Dog();
  myDog.eat();
  myDog.bark();
  • 多态:方法重载和方法重写。
  // Method Overloading
  public class MathUtils {
      public int add(int a, int b) {
          return a + b;
      }

      public double add(double a, double b) {
          return a + b;
      }
  }

  // Method Overriding
  public class Animal {
      void sound() {
          System.out.println("This animal makes a sound");
      }
  }

  public class Cat extends Animal {
      void sound() {
          System.out.println("The cat meows");
      }
  }

  Animal myCat = new Cat();
  myCat.sound(); // Output: The cat meows

6. 包和导入

  • :组织代码结构。
  package com.example.myapp;

  public class MyApp {
      // class code
  }
  • 导入:使用其他包的类。
  import java.util.Scanner;

  public class MyApp {
      public static void main(String[] args) {
          Scanner scanner = new Scanner(System.in);
          // code
      }
  }

7. 文件 I/O

  • 基本的文件读写:使用 FileReaderFileWriter 等进行文件操作。
  import java.io.FileWriter;
  import java.io.IOException;

  public class MyApp {
      public static void main(String[] args) {
          try {
              FileWriter myWriter = new FileWriter("filename.txt");
              myWriter.write("Hello, world!");
              myWriter.close();
          } catch (IOException e) {
              e.printStackTrace();
          }
      }
  }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/794228.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

RISC-V 指令系统

指令系统 指令集 指令集从本质上可以分为复杂指令集&#xff08;Complex Instruction Set Computing&#xff0c;CISC&#xff09;和精简指令集&#xff08;Reduced Instruction Set Computing&#xff0c;RISC&#xff09;两种。复杂指令集的特点是能够在一条指令内完成很多…

STM32智能电网监控系统教程

目录 引言环境准备智能电网监控系统基础代码实现&#xff1a;实现智能电网监控系统 4.1 数据采集模块 4.2 数据处理与分析 4.3 通信与网络系统实现 4.4 用户界面与数据可视化应用场景&#xff1a;电网监控与优化问题解决方案与优化收尾与总结 1. 引言 智能电网监控系统通过S…

5G与未来通信技术

随着科技的迅猛发展&#xff0c;通信技术也在不断演进。5G技术作为第五代移动通信技术&#xff0c;已成为现代通信技术的一个重要里程碑。本文将详细介绍5G及其对未来通信技术的影响&#xff0c;重点探讨超高速互联网和边缘网络的应用。 一、超高速互联网 1. 低延迟 5G技术最显…

收银系统源码-商品套餐功能视频介绍

千呼新零售2.0系统是零售行业连锁店一体化收银系统&#xff0c;包括线下收银线上商城连锁店管理ERP管理商品管理供应商管理会员营销等功能为一体&#xff0c;线上线下数据全部打通。 适用于商超、便利店、水果、生鲜、母婴、服装、零食、百货、宠物等连锁店使用。 详细介绍请…

Redis面试问题一

Redis在面试中有很大的概率会问到&#xff0c;因此我们一定要学会回答此方面的问题。 Redis主要涉及到使用场景已经一些其他方面的问题。 下面是有可能涉及到的问题。 问题一&#xff1a;你最近的项目中那些场景用到了Redis呢&#xff1f; 需要结合简历项目上的业务进行具体…

基于深度学习的行人重识别

目录 1、基于表征学习的ReID方法 2、基于度量学习的ReID方法 &#xff08;1&#xff09;对比损失(Contrastive loss) &#xff08;2&#xff09;三元组损失(Triplet loss) &#xff08;3&#xff09; 四元组损失(Quadruplet loss) &#xff08;4&#xff09;难样本采样三元…

全开源TikTok跨境商城源码/TikTok内嵌商城+搭建教程/前端uniapp+后端

多语言跨境电商外贸商城 TikTok内嵌商城&#xff0c;商家入驻一键铺货一键提货 全开源完美运营 海外版抖音TikTok商城系统源码&#xff0c;TikToK内嵌商城&#xff0c;跨境商城系统源码 接在tiktok里面的商城。tiktok内嵌&#xff0c;也可单独分开出来当独立站运营 二十一种…

生产英特尔CPU处理器繁忙的一天

早晨&#xff1a;准备与检查 7:00 AM - 起床与准备 工厂员工们早早起床&#xff0c;快速洗漱并享用早餐。为了在一天的工作中保持高效&#xff0c;他们会进行一些晨间锻炼&#xff0c;保持头脑清醒和身体活力。 8:00 AM - 到达工厂 员工们到达英特尔的半导体制造工厂&#…

Java异常体系、UncaughtExceptionHandler、Spring MVC统一异常处理、Spring Boot统一异常处理

概述 所有异常都是继承自java.lang.Throwable类&#xff0c;Throwable有两个直接子类&#xff0c;Error和Exception。 Error用来表示程序底层或硬件有关的错误&#xff0c;这种错误和程序本身无关&#xff0c;如常见的NoClassDefFoundError。这种异常和程序本身无关&#xff0…

【C语言】 —— 预处理详解(下)

【C语言】 —— 预处理详解&#xff08;下&#xff09; 前言七、# 和 \##7.1 # 运算符7.2 ## 运算符 八、命名约定九、# u n d e f undef undef十、命令行定义十一、条件编译11.1、单分支的条件编译11.2、多分支的条件编译11.3、判断是否被定义11.4、嵌套指令 十二、头文件的包…

GO channel 学习

引言 单纯地将函数并发执行是没有意义的。函数与函数间需要交换数据才能体现并发执行函数的意义。 虽然可以使用共享内存进行数据交换&#xff0c;但是共享内存在不同的goroutine中容易发生竞态问题。为了保证数据交换的正确性&#xff0c;必须使用互斥量对内存进行加锁&#…

使用 Apache DolphinScheduler 构建和部署大数据平台,将任务提交至 AWS 的实践经验

作者介绍 李庆旺 - 软件开发工程师&#xff0c;思科 引言 大家好&#xff0c;我是李庆旺&#xff0c;来自思科的软件开发工程师。我们的团队已经使用Apache DolphinScheduler搭建我们自己的大数据调度平台近三年时间。从最初的2.0.3版本开始至今&#xff0c;我们与社区一同成…

k8s集群部署mysql8主备

一、搜索mysql8版本 # helm search repo mysql# helm pull bitnami/mysql --version:11.1.2# tar -zxf mysql-11.1.2.tgz# cd mysql 二、修改value.ysqml文件 动态存储类自己提前搭建。 # helm install mysql8 -n mysql-cluster ./ -f values.yaml NAME: mysql8 LAST DEPLOYED…

Prototype, POC, MVP:区别与比较

在软件开发和产品设计领域&#xff0c;Prototype&#xff08;原型&#xff09;、Proof of Concept&#xff08;概念证明&#xff0c;简称POC&#xff09;和Minimum Viable Product&#xff08;最小可行产品&#xff0c;简称MVP&#xff09;是三个重要的概念。它们各自在项目的不…

MySQL数字相关数据处理函数

目录 1. 随机数生成 rand ( ) 2. 四舍五入 round&#xff08;&#xff09; 3. 舍去 truncate ( ) 4. 向上/下取整 5. 空处理 ifnull&#xff08; x , y &#xff09; 1. 随机数生成 rand ( ) rand ( ) 生成 0 到 1 的随机数&#xff1b; rand ( x ) 生成 0 到 1 的随机数…

什么是海外仓管理自动化?策略及落地实施步骤指南

作为海外仓的管理者&#xff0c;你每天都面临提高海外仓运营效率、降低成本和满足客户需求的问题。海外仓自动化管理技术为这些问题提供了不错的解决思路&#xff0c;不过和任何新技术一样&#xff0c;从策略到落地实施&#xff0c;都有一个对基础逻辑的认识过程。 今天我们整…

FastAPI 学习之路(四十三)路径操作的高级配置

在实际开发中&#xff0c;可能我们有些接口不能在接口文档中与其他业务接口一样开放给前端或者其他对接人&#xff0c;那么我们肯定会想着在接口文档中对其进行屏蔽隐藏操作&#xff0c;那么可以实现吗&#xff1f; 接口文档中隐藏接口 当然&#xff0c;还很简单&#xff0c;…

Java中的代理机制

代理的概述 代理&#xff1a;给目标对象提供一个代理对象&#xff0c;并且由代理对象控制着对目标对象的引用&#xff08;跟多态一样&#xff09; mybatis、spring都运用了代理机制 跳过创建类的过程&#xff0c;直接产生对象 简单来说&#xff0c;我们使用代理对象来代替对…

【《无主之地3》风格角色渲染在Unity URP下的实现_角色渲染(第四篇) 】

文章目录 概要描边问题外秒变分叉解决办法1:测试效果如下:外秒变分叉解决办法2:URP管线下PBR渲染源码关键词解释:完整shader代码如下:URP管线下二次元皮肤渲染源码URP管线下二次元头发渲染源码简要介绍文章的目的、主要内容和读者将获得的知识。 概要 提示:《无主之地3》…

华贝甄选干细胞科技,揭秘生命修复的奥秘

在探索生命奥秘的漫漫征途中&#xff0c;华贝甄选凭借干细胞科技的神奇力量&#xff0c;为您点亮健康与活力的希望之光。 我们深知&#xff0c;细胞是生命的基石&#xff0c;而干细胞则是这基石中蕴含的无限潜能。华贝甄选精心打造的干细胞疗法&#xff0c;如同神奇的魔法&…