25
2020
09

java封装,继承

Java封装在面向对象程式设计方法中是指一种将抽象性函式接口的实现细节部分包装、隐藏起来的方法,封装可以被认为是一个保护屏障,防止该类的代码和数据被外部类定义的代码随机访问。

实现Java封装的步聚:修改属性的可见性来限制对属性的访问一般限制为private,

public class Person {    private String name;  

   private int age;

}

段代码中,将 name 和 age 属性设置为私有的,只能本类才能访问,其他类都访问不了

对每个值属性提供对外的公共方法访问,也就是创建一对赋取值方法,用于对私有属性的访问

创建一个EncapTest.java 文件

public class EncapTest{   private String name;   private String idNum;   private int age;   public int getAge(){      return age;   }   public String getName(){      return name;   }   public String getIdNum(){      return idNum;   }   public void setAge( int newAge){      age = newAge;   }   public void setName(String newName){      name = newName;   }   public void setIdNum( String newId){      idNum = newId;   }}

public方法是外部类访问该类成员变量的入口,通常情况下,这些方法被称为getter和setter方法何要访问类中私有成员变量的类都要通过这些getter和setter方法

创建RncapTest类来访问EncapTest.

public class RunEncap{   public static void main(String args[]){      EncapTest encap = new EncapTest();    

     encap.setName("James");    

      encap.setAge(20);      

     encap.setIdNum("12343ms" 作者:dyy | 分类:运维 | 浏览:0 | 评论:0

22
2020
09

解决idea没有tomcat server选项的问题

网上的解决方法:这个是从网上看来的file-->setting-->plugins,搜索tomcat 然后install之后会提示重启,重启之后应该就会有,但是在我的IDEA上没有搜到类似的,如果能搜到,这是一种解决办法。前提:我的idea是社区版的,然后了解到社区版就是没有tomcat server的,所以我选择去下一个专业版。
21
2020
09

JavaScript的使用误区和表单验证:json,json.parse()方法和json.stringify()

赋值运算符应用错误:

在  程序中如果你在 if 条件语句中使用赋值运算符的等号 (=) 将会产生一个错误结果, 正确的方法是使用比较运算符的两个等号 (==),if 条件语句返回 false (是我们预期的)因为 x 不等于 10        var x = 0;//变量赋值   document.getElementById("demo").innerHTML = Boolean(x == 10);   //这里的x是等于10所有结果为false;

var x = 0;    document.getElementById("demo").innerHTML = Boolean(x = 10);  语句返回 true 因为条件语句执行为 x 赋值 10,10 为 true

var x = 0;      document.getElementById("demo").innerHTML = Boolean(x = 0);  语句返回 false因为条件语句执行为 x 赋值 0,0 为 false     //赋值语句返回变量的值

比较运算符的常见错误:var x = 10;   var y  = "10"

 document.getElementById("demo").innerHTML = Boolean(x == y);

运行结果为true,y是一个字符串x是一个数组并不会相等

”===“为恒等计算符,同时检查表达式的值与类型,var x = 10;var y = "10";

if (x === y)返回false

 switch 语句中出现:switch(x) { case 10: alert("Hello");}

switch(x) {case "10": alert("Hello");}//前者会执行alert弹窗,后者由于类型不一直并不会执行alert弹窗;

加法与连接:加法是两个数字相加,连接是两个字符串连接加法和连接都使用 + 运算符 var x = 10 + 5;    //15  var x = 10 + "5"; //105;

字符串的分行:可以在字符串中使用断行语句  blob.png字符串中直接使用回车换行是会报错的blob.png如果需要的话可以使用“\”

在定义数组元素的时候后面不能添加逗号,在不同的浏览器可能得到不同的结果

var  colors=[5,6,7];

定义对象,最后不能添加逗号:

websites = {site:"菜鸟教程", url:"www.runoob.com", like:460}

Undefined 不是 Null,null 用于对象, undefined 用于变量,属性和方法对象只有被定义才有可能为 null,否则为 undefined需要先使用 typeof 来检测对象是否已定义:

if (typeof myObj !== "undefined" && myObj !== null)

表单验证:HTML 表单验证可以通过js来完成

判断表单字段(fname)值是否存在,如果不存在,就阻止表单提交:

必填(或必选)项目

检查用户是否已填写表单中的必填(或必选)项目。假如必填或必选项为空,那么警告框会弹出,并且函数的返回值为 false,否则函数的返回值则为 true

function validateForm() {   var x = document.forms["myForm"]["fname"].value;  

  if (x == null || x == "") {        alert("需要输入名字。");      

       return false;    

 }

}

再写一个表单:

<form name="myForm" action="demo_form.php"

on\="return validateForm()" method="post">

名字: <input type="text" name="fname">

<input type="submit" value="提交">

</form>

blob.pngblob.png

对输入数字的验证:

<h1> 验证输入</h1>

<p>请输入 1 到 10 之间的数字:</p>

<input id="numb">

<button type="button" on\="myFunction()">提交</button>

<p id="demo"></p>

<script>

function myFunction() {

    var x, text;

    // 获取 id="numb" 的值

    x = document.getElementById("numb").value;

    // 如果输入的值 x 不是数字或者小于 1 或者大于 10,则提示错误 Not a Number or less than one or greater than 10

    if (isNaN(x) || x < 1 || x > 10) {

        text = "输入错误";

    } else {

        text = "输入正确";

    }

    document.getElementById("demo").innerHTML = text;

}

</script>

blob.png  blob.png

<form action="demo_form.php" method="post">

  <input type="text" name="fname" required="required">

  <input type="submit" value="提交">

</form>

点击提交按钮,如果输入框是空的,浏览器会提示错误信息,点击提交将会跳转页面

数据验证:数据验证用于确保用户输入的数据是有效的,验证必需字段是否有输入,

用户是否输入了合法的数据,在数字字段是否输入了文本?  服务端数据验证是在数据提交到服务器上后再验证,而客户端数据验证是在数据发送到服务器前,在浏览器上完成验证

json

JSON 是用于存储和传输数据的格式,通常用于服务端向网页传递数据,是一种轻量级的数据交换格式,独立的语言

JSON 使用  语法,但是 JSON 格式仅仅是一个文本可以被任何编程语言读取及作为数据格式传递

使用 JSON 语法定义了 employees 对象:定义三个人(对象)记录的数组

{"employees":[
    {"firstName":"John", "lastName":"Doe"},
    {"firstName":"Anna", "lastName":"Smith"},
    {"firstName":"Peter", "lastName":"Jones"}
]}

Json格式转化后为对象,在语法上与创建  对象代码是相同的  程序可以将 JSON 数据转换为  对象

json语法规则:数据为 键/值 对,数据由逗号分隔,大括号保存对象,方括号保存数组json一个数据一个名称对应一个值   "name":"Runoob"

20
2020
09

Java数组,

Java数组:Java 语言中提供的数组是用来存储固定大小的同类型元素,我们以声明一个数组变量,如 numbers[100] 来代替直接声明 100 个独立变量 number0,number1,....,number99声明数组的变量:想要使用数组首先必须声明一个数组的变量,才能在程序中使用数组   声明数组变量的语法: dataType[] arrayRefVar//首选方法或者dataType arrayRefVar[];  两个方法效果是一样的 创建一个数组使
19
2020
09

未命名

中的错误、:try 语句测试代码块的错误,catch 语句处理错误,throw 语句创建自定义错误,finally 语句在 try 和 catch 语句之后,无论是否有触发异常,该语句都会执行当错误发生时,当事情出问题时, 引擎通常会停止,并生成一个错误消息,这种情况叫抛出错误 try 和 catch:try 语句允许我们定义在执行时进行错误测试的代码块,catch 语句允许我
13
2020
09

js

 的作用域:在  中, 对象和函数同样也是变量,作用域为可访问变量,对象,函数的集合  函数作用域: 作用域在函数内修改局部作用域:变量在函数内声明,变量为局部作用域,变量在函数内声明也只能在函数内部访问     局部变量只作用于函数内,所以不同的函数可以使用相同名称的变量,局部变量在函数开始执行时创建,函数执行完后局部变量会自动销毁全局变量:变量在函数外定义,即为全局变量  全局变量有 全局作用域:受用于网页中所有
08
2020
09

String、StringBuffer、StringBuilder有什么区别?

今天我会聊聊日常使用的字符串,别看它似乎很简单,但其实字符串几乎在所有编程语言里都是个特殊的存在,因为不管是数量还是体积,字符串都是大多数应用中的重要组成。今天我要问你的问题是,理解 Java 的字符串,String、StringBuffer、StringBuilder 有什么区别?典型回答String 是 Java 语言非常基础和重要的类,提供了构造和管理字符串的各种基本逻辑。它是典型的 Immutable 类,被声明成为 final class,所有属性也都是 final 的。也由于它的不可
07
2020
09

JavaScript 编程语言

是 Web 的编程语言; 是一种轻量级的编程语言, 是可插入 HTML 页面的编程代码,插入 HTML 页面后,可由所有的现代浏览器执行 用法:TML 中的脚本必须位于 <script> 与 </script> 标签之间,脚本可被放置在 HTML 页面的 <body> 和 <head> 部分中,<script>标签:在 HTML 页面中插入 ,要使用 <script> 标签 ,<script>
06
2020
09

强引用、软引用、弱引用、幻象引用有什么区别?

在 Java 语言中,除了原始数据类型的变量,其他所有都是所谓的引用类型,指向各种不同的对象,理解引用对于掌握 Java 对象生命周期和 JVM 内部相关机制非常有帮助。今天我要问你的问题是,强引用、软引用、弱引用、幻象引用有什么区别?具体使用场景是什么?典型回答不同的引用类型,主要体现的是对象不同的可达性(reachable)状态和对垃圾收集的影响。所谓强引用(“Strong” Reference),就是我们最常见的普通对象引用,只要还有强引用指向一个对象,就能表明对象还“活着”,垃圾收集器不
05
2020
09

谈谈final、finally、 finalize有什么不同?

Java 语言有很多看起来很相似,但是用途却完全不同的语言要素,这些内容往往容易成为面试官考察你知识掌握程度的切入点。今天,我要问你的是一个经典的 Java 基础题目,谈谈 final、finally、 finalize 有什么不同?典型回答final 可以用来修饰类、方法、变量,分别有不同的意义,final 修饰的 class 代表不可以继承扩展,final 的变量是不可以修改的,而 final 的方法也是不可以重写的(override)。finally 则是 Java 保证重点代码一定要被执