javagetset方法解釋
A. java中「get」和「set」方法怎麼寫
java bean就是把自己的數據成員封裝起來, 讓外界不能直接操作數據成員; 而只能通過bean提供的get 和 set方法進行操作,保證了數據安全性。可以理解為:get就是把對象中的值拿出來, set就是把某個值放到對象中去。
比如:
public class LoginInfoBean {
private String time; //時間
private String ip; //IP
private String account; // 賬號
public String getTime() {
return time;
}
public void setTime(String time) {
this.time = time;
}
public String getIp() {
return ip;
}
public void setIp(String ip) {
this.ip = ip;
}
public String getAccount() {
return account;
}
public void setAccount(String account) {
this.account = account;
}
}
---------------------------------------------------------------
關於如何在servlet中取得數據:
首先要明白,我們提交到servlet的數據,需要走servlet的doGet或者doPost方法。
如果你不用框架,只用純粹的servlet,在servlet的doGet和doPost方法中因為只有兩個參數,也就是HttpRequest和HttpResponse,比如:
doPost(HttpServletRequest req,
HttpServletResponse resp){
........
}
按照以上的寫法,只能通過req.getParamter("xxx")取得;
比如下面這個例子:
file: login.jsp
<form id="loginform" name="loginform" method="post" action="LoginServlet" >
<input name="userName" type="text" id="userName" />
ps: 通過 action="LoginServlet" 可以知道,提交的路徑為LoginServlet, 然後會到web.xml中尋找關於LoginServlet 的具體配置,以確定是哪個servlet處理這個請求。
file: web.xml
<servlet>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>com.test.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/LoginServlet</url-pattern>
</servlet-mapping>
ps: 通過以上配置可以確定,處理這個請求的servlet為com.test.LoginServlet
file: com.test.LoginServlet.java
public void doPost(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
String name = request.getParameter("userName");
}
ps: 通過 request.getParameter("userName"); 就可以取得頁面上輸入的值。
如果用框架,每個框架的機制不一樣,需要分別對待, 但底層也都是servlet。我接觸過的struts1, struts2, 和spring MVC, 其中 struts1 給我們提供了一個formbean, 用於收集頁面的數據(就是上面那個javabean的問題); struts2和spring MVC 省去了formbean, 後台處理的action就是一個bean, 數據在action中直接可以取到。
推薦一個簡單的方法:寫get/set方法,OC有一個自動化的方法,即使用@proterty和@synthesize關鍵字
Person.h
B. java中set/get起什麼作用哪位高手能說的詳細一點謝謝
起到對外界封閉的作用,舉個例子 假如你的褲兜里有很多前你肯定不會讓別人都來掏 肯定只有自己能拿到 或者你拿出來給他 set和get就相當與你的手 而你累的其他屬性就相當與你兜里的錢 對於外面的人來說不知道你類里有什麼他就知道這個調用這個get會給他一個東西 懂了吧
C. java的get和set方法
set設置對象屬性值,get從對象屬性中獲取值get自然是取值 set 自然是設置值 這個是 java的 面向對象編程的一個特點直接GETSET用唄JAVA中有一個概念叫做封裝,封裝就是將對象一些自身的屬性封裝起來,隱藏起來,不讓外界任意訪問,如果你要讓外界訪問這個屬性你就要提供get和set方法。比如你叫張三,你的名字只有你一個人知道(私有屬性),別人問你叫什麼,你說出你的名字就調用了你的get方法,反之如果給你取名字調用的就是你的set方法,get和set方法不是一定要必須兩者都有,你可以根據實際情況而定。get方法是用來得到對象里屬性的值,set方法相反,是用來給對象的屬性設值的。get方法一般是得到成員變數的值,set是設置一個成員變數的值
D. java中SET和GET。。。
java程序一般將A類的屬性修飾符設置為private,這是為了更好的封裝數據。要想在B類里引用該屬性,就可以在A類里定義修飾符為public的set,get方法以設置和獲取private型的屬性值
別說的那麼專業化了,理解都要半天。
就這么理解吧,面向對象中,想對類的成員變數設置訪問一些許可權,於是,就將該欄位設置為private的,這樣別的類就不能訪問了,然後在該內定義兩個方法,一個專門用於獲取,一個用於修改,這樣,在你不想讓別人亂動該欄位的時候,就在該方法內寫一些限制條件。
而為了規范起見(團隊開發需要嘛),就根據人家老外的習慣,將方法名設置為set+欄位名,get+欄位名(名字亂改沒問題),既然規范了,那就是別人都叫這名了,於是,有些框架給對象賦值就有方法了,方法名稱由get或set開始的又有private變數名的,就找出來調用。hibernate1框架就這樣弄得,至於後面的版本是不是這樣就不大清楚了。
JavaBean就是一個JAVA類,既然是JAVA類就不需要什麼組件了,這玩意直接深入到虛擬機了的
java程序規范中會建議大家盡量將類中的屬性私有化,即定義為private變數,通過設置set和get函數來對屬性進行操作。一些人存在這樣的疑問,為什麼不直接將屬性設置為public,以後調用屬性時直接通過對象進行訪問不是更方便?
當然java中這樣做有它的原因:
1 將數據與行為分離,也就是java的面向對象的概念。
對象就是屬性+行為,封裝就是把對象的私有屬性封裝起來,只有通過自己公開的行為去改變(獲得)對象內部的私有屬性信息,而那些public的方法正是面向其他對象的介面,只有通過介面去改變(獲得)對象的私有屬性
2 安全性
設想,你有一個Person類代表一個人,Person有一個char類型的sex欄位表示性別,理論上,sex只接受兩個值, 'M '和 'F ',但如果你把sex欄位設為public,你很難限制你的用戶只給它賦 'M '或 'F '值。將sex設為private,再用setSex()來設置性別,你就完全可以控制這種行為了。而且你還可以控制只能get不能set,或相反,但如果是public就不行了。別外有一點屬性我們可能並不希望其他用戶對我們的屬性進行寫操作,這個時候,可以直接不寫setX方法。這就是只讀屬性了。
3 編碼規范性
我們在設計類,或者作com組件時經常告訴其實coder,你只需要調用我的XX介面方法就可以了,內部我是怎麼實現的,你不用管,如果面向特定的環境特定的時間段,直接將屬性聲明為public,讓外部對象訪問也未償不可,沒有面象對象思想時,我在寫C語言程序時結構中的變數是可以隨意被訪問的,因為沒有pulbic,private之分,現在我們是面向對象編程,我們需要在介面處作文章,而保護對象的私有屬性,即安全性,只有通過對外公開的介面方法去訪問在面向對象理論上認為是安全的。
4 穩定性
5 可擴展性
6 便於維護
E. java的get和set方法
set設置對象屬性值,get從對象屬性中獲取值get自然是取值
set
自然是設置值
這個是
java的
面向對象編程的一個特點直接GETSET用唄JAVA中有一個概念叫做封裝,封裝就是將對象一些自身的屬性封裝起來,隱藏起來,不讓外界任意訪問,如果你要讓外界訪問這個屬性你就要提供get和set方法。比如你叫張三,你的名字只有你一個人知道(私有屬性),別人問你叫什麼,你說出你的名字就調用了你的get方法,反之如果給你取名字調用的就是你的set方法,get和set方法不是一定要必須兩者都有,你可以根據實際情況而定。get方法是用來得到對象里屬性的值,set方法相反,是用來給對象的屬性設值的。get方法一般是得到成員變數的值,set是設置一個成員變數的值
F. JAVA中SET 和 GET 的用法
我來回答:
通常set 和 get是屬性的存取器,一般稱getter/setter。 set表示設置值,get表示獲取值。在Eclipse中先定義好欄位後,選擇Source/Generate Getters and Setters可以根據選擇自動生成這些方法,JBuilder中對應有BeanInfo的功能。
get方法返回的類型必須為該欄位對應的類型;
set方法返回的類型一般為void,但傳入的類型應為該欄位對應的類型。
所以,jawdat的寫法應該修改為:
public String getName() {}
public void setName(String name) {}