博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java学习笔记(七)——获取类中方法的信息,java的LinkedList
阅读量:5054 次
发布时间:2019-06-12

本文共 7216 字,大约阅读时间需要 24 分钟。

【前面的话】

      在实际项目中学习知识总是最快和最有效的,既能够较好的掌握知识,又能够做出点东西,还是简单的知识总结,最近一直在总结笔记,写的东西还是比较水,希望慢慢可以写出一些干货。

      学习过程中的小知识点总结,基础文章,选择阅读

【知识汇总】

一、 获取一个类中方法的详细信息

     1. getDeclaredMethods()方法和getMethods()的区别

        1)getDeclaredMethod*()获取的是类自身声明的所有方法,包含public、protected和private方法。

        2)getMethod*()获取的是类的所有共有方法,这就包括自身的所有public方法,和从基类继承的、从接口实现的所有public方法。

     2. 如何得到一个类的方法的详细信息,下面的代码就是获得一个类的:

        1)方法的名字

        2)参数的类型

        3)方法的返回值的类型

        4)方法的修饰符有

        5)方法的异常类型

     3. 代码介绍:

        1)ModifiersText.java实现获取Text类方法的信息

        2)Test.java测试类

    4. 代码:

        1)ModifiersText.java

1 import java.lang.reflect.Method; 2 import java.lang.reflect.Modifier; 3  4 public class ModifiersText { 5  public static void main(String[] args) throws Exception { 6    Class c=Class.forName("Test"); 7    //-------------------获取方法的详细信息 8    //-------------------测试函数getDeclaredMethods() 9    Method m[]=c.getDeclaredMethods();10  11    for(int i=0;i
View Code

       2)Test.java

1 public class Test { 2   public void test1(String[] args) throws ClassNotFoundException { 3   } 4    5   protected int test2(String[] args) throws ClassNotFoundException { 6         return 0; 7   } 8   private double test3(String[] args) throws ClassNotFoundException { 9         return 0;10   }11 }
View Code

    5. 执行结果

1 getDeclaredMethods()获得的方法的名字是:test1 2 getDeclaredMethods()获得的参数的类型是class [Ljava.lang.String; 3 getDeclaredMethods()获得的方法的返回值的类型void 4 getDeclaredMethods()获得的方法的修饰符有public 5 getDeclaredMethods()获得的方法的异常类型是:class java.lang.ClassNotFoundException 6 ------------------------------------------------------------------- 7 getDeclaredMethods()获得的方法的名字是:test2 8 getDeclaredMethods()获得的参数的类型是class [Ljava.lang.String; 9 getDeclaredMethods()获得的方法的返回值的类型int10 getDeclaredMethods()获得的方法的修饰符有protected11 getDeclaredMethods()获得的方法的异常类型是:class java.lang.ClassNotFoundException12 -------------------------------------------------------------------13 getDeclaredMethods()获得的方法的名字是:test314 getDeclaredMethods()获得的参数的类型是class [Ljava.lang.String;15 getDeclaredMethods()获得的方法的返回值的类型double16 getDeclaredMethods()获得的方法的修饰符有private17 getDeclaredMethods()获得的方法的异常类型是:class java.lang.ClassNotFoundException18 -------------------------------------------------------------------19 getMethods()获得的方法的名字是:test120 getMethods()获得的参数的类型是class [Ljava.lang.String;21 getMethods()获得的方法的返回值的类型void22 getMethods()获得的方法的修饰符有public23 getMethods()获得的方法的异常类型是:class java.lang.ClassNotFoundException24 -------------------------------------------------------------------25 getMethods()获得的方法的名字是:wait26 getMethods()获得的方法的返回值的类型void27 getMethods()获得的方法的修饰符有public final28 getMethods()获得的方法的异常类型是:class java.lang.InterruptedException29 -------------------------------------------------------------------30 getMethods()获得的方法的名字是:wait31 getMethods()获得的参数的类型是long32 getMethods()获得的参数的类型是int33 getMethods()获得的方法的返回值的类型void34 getMethods()获得的方法的修饰符有public final35 getMethods()获得的方法的异常类型是:class java.lang.InterruptedException36 -------------------------------------------------------------------37 getMethods()获得的方法的名字是:wait38 getMethods()获得的参数的类型是long39 getMethods()获得的方法的返回值的类型void40 getMethods()获得的方法的修饰符有public final native41 getMethods()获得的方法的异常类型是:class java.lang.InterruptedException42 -------------------------------------------------------------------43 getMethods()获得的方法的名字是:hashCode44 getMethods()获得的方法的返回值的类型int45 getMethods()获得的方法的修饰符有public native46 -------------------------------------------------------------------47 getMethods()获得的方法的名字是:getClass48 getMethods()获得的方法的返回值的类型class java.lang.Class49 getMethods()获得的方法的修饰符有public final native50 -------------------------------------------------------------------51 getMethods()获得的方法的名字是:equals52 getMethods()获得的参数的类型是class java.lang.Object53 getMethods()获得的方法的返回值的类型boolean54 getMethods()获得的方法的修饰符有public55 -------------------------------------------------------------------56 getMethods()获得的方法的名字是:toString57 getMethods()获得的方法的返回值的类型class java.lang.String58 getMethods()获得的方法的修饰符有public59 -------------------------------------------------------------------60 getMethods()获得的方法的名字是:notify61 getMethods()获得的方法的返回值的类型void62 getMethods()获得的方法的修饰符有public final native63 -------------------------------------------------------------------64 getMethods()获得的方法的名字是:notifyAll65 getMethods()获得的方法的返回值的类型void66 getMethods()获得的方法的修饰符有public final native67 -------------------------------------------------------------------
View Code

========================我是2014年2月11日的分割线========================

二、javaLinkedList

      项目中要使用到LinkedList,其实对于java来说这些结构都已经是写好了的,只需要去调用就可以了,开发就简单了好多。

     1.代码结构:主要写了下面几个java文件,将对LinkedList的操作分开。

  • LinkList.java实现对LinkedList类中方法的重写定义,这样就可以方便的使用自己定义的方法名对LinkedList进行操作,逻辑结构也就更加清晰一些了。
  •  LinkListInfo.java数据封转
  • StorageTest,.java实现存储数据
  • MainTest.java测试代码,取数

     2.代码

  • LinkList.java
1 package linkedlisttest; 2  3 import java.util.LinkedList; 4 import java.util.List; 5  6 /** 7  * @author XT 8  * 定义List 9  *10  */11 12 public class LinkList 13 {  14     private static LinkedList 
linklist = new LinkedList
();15 16 public static void addToList(LinkListInfo displayinfo){17 linklist.add(displayinfo);18 }19 20 public static void addFistToList(LinkListInfo displayinfo){21 linklist.addFirst(displayinfo);22 }23 24 public static void addLastToList(LinkListInfo displayinfo){25 linklist.addLast(displayinfo);26 }27 28 public static void removeFistToList(){29 linklist.removeFirst();30 }31 32 public static void removeLastToList(){33 linklist.removeLast();34 }35 36 public static List getList(){37 return linklist;38 }39 }
View Code
  • LinkListInfo.java
1 package linkedlisttest; 2  3 public class LinkListInfo { 4      5     private String IdName; 6     private int IdNum; 7      8     public String getIdName() { 9         return IdName;10     }11     12     public void setIdName(String idName) {13         IdName = idName;14     }15     16     public int getIdNum() {17         return IdNum;18     }19     20     public void setIdNum(int idNum) {21         IdNum = idNum;22     }23 }
View Code
  • StorageTest,.java
1 package linkedlisttest; 2  3 public class StorageTest  4 { 5     public void storageTest (){      6          for(int i=0;i<10;i++){ 7              LinkListInfo linklistinfo = new LinkListInfo(); 8              linklistinfo.setIdName("帅哥"+i); 9              linklistinfo.setIdNum(i);10              LinkList.addToList(linklistinfo);//静态方法类可以直接使用11          }12     }13     14 }
View Code
  •  MainTest.java
1 package linkedlisttest; 2  3 import java.util.List; 4  5 public class MainTest { 6   public static void main(String[] args){  7     StorageTest storagetest = new StorageTest(); 8     storagetest.storageTest(); 9     List
linklistinfo = LinkList.getList();10 for(int i=0;i
View Code

   3.结果

1 帅哥0 2 0 3 .......... 4 帅哥1 5 1 6 .......... 7 帅哥2 8 2 9 ..........10 帅哥311 312 ..........13 帅哥414 415 ..........16 帅哥517 518 ..........19 帅哥620 621 ..........22 帅哥723 724 ..........25 帅哥826 827 ..........28 帅哥929 930 ..........
View Code

========================我是2014年2月12日的分割线========================

【后面的话】

      节后的生活有归于平静了,必须在接下来的日子学习到更多,不要着急,一点一点来。

      分享:

      社交网络≠阅读

      阅读≠学习

      学习≠生产

      生产≠影响力

 

——TT

转载于:https://www.cnblogs.com/xt0810/p/3545686.html

你可能感兴趣的文章
poj1611 简单并查集
查看>>
Ubuntu 14.04下安装CUDA8.0
查看>>
跨平台开发 -- C# 使用 C/C++ 生成的动态链接库
查看>>
C# BS消息推送 SignalR介绍(一)
查看>>
WPF星空效果
查看>>
WPF Layout 系统概述——Arrange
查看>>
PIGOSS
查看>>
几款Http小服务器
查看>>
iOS 数组排序
查看>>
第三节
查看>>
PHP结合MYSQL记录结果分页呈现(比较实用)
查看>>
Mysql支持的数据类型
查看>>
openSuse beginner
查看>>
Codeforces 620E(线段树+dfs序+状态压缩)
查看>>
Windows7中双击py文件运行程序
查看>>
Market entry case
查看>>
bzoj1230 开关灯 线段树
查看>>
LinearLayout
查看>>
学习python:day1
查看>>
css3动画属性
查看>>