Encapsulation Hide Private Variable
Sep 10, 2014
As below code showing that you cannot directly access the private variable as i understood,
public class EncapsulationDemo{ private int ssn;
private String empName; private int empAge; //Getter and Setter methods
public int getEmpSSN(){ return ssn; }
public String getEmpName(){ return empName;
[Code] .....
View Replies
ADVERTISEMENT
Apr 9, 2015
I just recently started learning about encapsulation, how to set variables private and only accessible to other classes through setters() and getters(). I've seen a couple of programming examples, perhaps not enough but some from here, and I sort of built the assumption that by default all variables need to be private. to make things more clear, here's a card dealer I made which simply
1- generates a fulll deck of 52 cards
2- lets user decide how many players, with 5 as Max number allowed as each player is dealt 10 cards.
3- deal cards
I approached this by making A deck , card , player and game class
import java.util.ArrayList;
public class Deck {
//an Object of this Class would generate a full deck ie an ArrayList of 52 Cards
private String[] suits={"Spades","Diamond","Clubs","Hearts"};
private int[] number={1,2,3,4,5,6,7,8,9,10,11,12,13};
ArrayList<Cards> deck= new ArrayList<Cards>();
[code]....
I can understand why for example Deck class's suit and number arrays are set to private , as they only need to be accessed by this class only. however, both the Deck class's deck arraylist and the Player class arraylist are not private, as I need to transfer these values from one to the other and it felt to me that setting them to private would make it more difficult to deal with them, but what I did instead is to set the Game class dealCard(), which is the only method that have access to them as private. does this achieve the same effect or do I need to set both of these arrayList to private?a follow up question, this is more related to the actual card dealer program, in this code
private void dealCards(){
for(int x = 0 ; x < playerCount ; x++){
for(int y = 0 ; y < 10; y++){
playerList.get(x).pile.add(deck.deck.get(0));
deck.deck.remove(0);
}
}
}
is there an API in ArrayList class that moves(adds to receiver and remove from giver) element across ArrayLists?
View Replies
View Related
Sep 22, 2014
I'm working on a project that contains multiple classes. Each class contains and must contain only PRIVATE variables. Here's my issue. When my test code calls for a new instance of "StudentClass" as so:
StudentClass studentClass = new StudentClass(offeredClass.getClassIdNumber(),
offeredClass.getClassName(),
offeredClass.getClassroom());
The corresponding constructor won't let me initialize it's variables because they are declared private within another class, as shown here:
StudentClass (float classIdNumber, String className, Classroom room){
this.classIdNumber = classIdNumber;
this.className = className;
this.room = room;
}
When getClassName, getClassroom, and getClassIdNumber are passed to a toString() method elsewhere in my test code. the output is returned just fine. When passed through the StudentClass, I'm getting Null across the board.
View Replies
View Related
May 2, 2015
I have a class named Base and a private variable named _hopcount i have 10 instances of class base i use _hopcount as creteria to some if but other instances edit _hopcount so i want to prevent _hopcount edit by other instances; I want to have private variable which other instances of same class can't modify it.
public class Base extends TypedAtomicActor {
private int _hopcount = 0;
if(_hopcount <= 3) {
some code;
}
public function() {
_hopCount += 1;
}
}
View Replies
View Related
Oct 10, 2014
I've got an abstract class
public abstract class AbstractClass
{
//stuff
}
And a few classes that inherit from it
public class Class1 extends AbstractClass
{
//stuff
}
public class Class2 extends AbstractClass
{
//stuff
}
within another class I have a private variable with the type of the Abstract class, and within one of the methods I assign an object to the the variable like this:
public class Test
{
private AbstractClass temp;
public testMethod(){
Class1 anObject = new Class1();
temp = anObject;
}
}
Is this legal? Will temp become a Class1 object?
View Replies
View Related
Jan 29, 2014
I understand making things private and using getters and setters to prevent corrupt data/valdiation. I am having trouble picturing a scenario where I can change my code without breaking others. What can I change without breaking existing code? One example I can think of is I can change an instance variable name since the getter for it will return it regardless. I am looking for a more vivid example...
View Replies
View Related
Jun 7, 2013
I found the following inheritance and encapsulation issue . Suppose you have a parent class with a non-static protected attribute.
package package1;
public class Parent{
protected int a = 10; // this is the non-static protected attribute in question
public static void main(String args[]){
// whatever logic
}// end Parent class
}// end main()
Now suppose you have a child class in another package and you have imported in the parent class.
package package2;
import package1.Parent;
public class Child extends Parent{
public static void main(String[] args){
Parent p = new Parent();
Child c = new Child();
System.out.println(p.a); //should print out 10 BUT DOES NOT
System.out.println(c.a); //should print out 10
}// end main()
}// end Child class
My observation is that p.a produces an error even though, to the best of my knowledge, it should not. I believe the statement "System.out.println(p.a);" should print out a 10.
Am I misunderstanding something about inheritance and encapsulation?
View Replies
View Related
Mar 21, 2015
I have my code in 3 different files using encapsulation (Data hiding) and i have 1 problem at the very end of my code in my if and else statement (very bottom) when trying to call the classes from the other 2 documents. I will put the code in 1st document to 3rd document.
// FIRST DOCUMENT
public class CollegeCourse { //class name
//variables
String deptName;
int courseNum;
int credits = 3;
double fee;
[Code] ....
UPDATE: error message is
UseCourse.java:24: error: cannot find symbol
LabCourse lc = new LabCourse(department, course, Credits);
^
symbol: variable department
location: class UseCourse
UseCourse.java:24: error: cannot find symbol
LabCourse lc = new LabCourse(department, course, Credits);
[Code] ....
4 errors
View Replies
View Related
Apr 4, 2015
Tried it, I get red line under it, tried to do "jframe1 jframe1 = new jframe1(variable);
jframe1.setVisible(False); still failed. all I want to do is open a different jframe which I got that to work but cant hide show me how to do it without having to emend my code I want to be able to do is in same style.
CashPaybtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
//System.out.println("CashPaybtn.actionPerformed, event="+evt);
//TODO add your code for CashPaybtn.actionPerformed
//PaymentMethod.setVisible(false);
[Code]...
View Replies
View Related
Aug 8, 2014
My code is already running. But the problem is, i don't want to see 0 denomination. like for example if i input 3.86 in (dollars).
dollars: 3
quarters: 3
dimes: 1
pennies: 1
so my problem is. it still showing 0 denomination like this:
dollars: 3
quarters: 3
dimes: 1
nickels: 0
pennies: 1
Currently using latest netbeans and if im correct we are using methods and class runner?.. Anyways here's the code..
for method:
package MyPrograms;
public class Mp3Method {
public int dollars(int dollars,int remainingAmount){
return dollars = remainingAmount / 100;
}
public int quarters(int quarters, int remainingAmount){
return quarters = remainingAmount / 25;
[Code] .....
View Replies
View Related
Aug 1, 2014
Hiding the column but not removing , because i need to bring this column id to the next screen, only i do not want to show the column but internally it has to take the value to navigate the screen, but if i use below code, i am getting null pointer exception,
this.column.setMinWidth(0);column.setMaxWidth(0); column.setWidth(0); column.setPreferredWidth(0)
View Replies
View Related
Jul 25, 2014
Cannot switch on a value of type Object. Only convertible int values, strings or enum variables are permitted
I'm trying to hide and option using switch statement but this is the error i receive.
public void actionPerformed(ActionEvent e)
{
if(e.getSource() == comboDest1)
{
switch(comboDest1.getSelectedItem())
[Code] .....
View Replies
View Related
Mar 27, 2014
I have eight panels that are one above the other and are the full width of the frame.
I would like to hide some of them some of the time and then "bring them back".
If I use panel1.setVisible(false) panel1 will disappear but then all the panels below it move up to take panel1's place.
I don't want that to happen. I want just a blank area where panel1 was.
Is there a way to do that?
View Replies
View Related
Jul 24, 2014
I'm trying to hide a JComboBox option depending if the a user has picked a certain option from a previous JComboBox.
.setVisible(false). doesn't work
String[] Dest = new String[] {"Select Destination","Crete", "Paris", "Croatia"};
String[] Accomodation = new String[] {"Select your Accomodation","Hotel", "Villa", "Bed & Breakfast","Youth Hostel"};
String[] Night = new String[] {" Select number of Nights", "7","10","14"};
final JComboBox<String> comboDest1 = new JComboBox<String>(Dest);
[Code] ....
I know setVisible isn't the way it's done but i don't know how to do it
View Replies
View Related
Jan 26, 2015
I've made a login system with a username and a password. The password is visible and I wanna hide it, how do I do that? Here is my code (have used swing);
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Password implements ActionListener {
private String Username = "hudhud";
private String Password = "fitness";
[Code] ......
View Replies
View Related
Mar 8, 2014
I am using jsf with richfaces. Scroll bar inside panel grid is displayed. Need to disable / hide the bowser (IE-9) scroll bar.
style="overflow:hidden"
Added above style, but not working.
View Replies
View Related
May 18, 2014
I have a login window, which when sucessful will activate a new Applet/JFrame. The problem is that the login window remains in the background under the new JFrame. I want this to diappear. I want to either set the visibility to false, or close it.This is how the new window is started:
if(sucess.equals("flase")){
DBAccess dba = new DBAccess();
dba.setFname(fnameusr); //fnameusr
dba.setLname(lnameusr); //lnameusr
dba.main(null);
//LogIn.exit(0);
}else{
JOptionPane.showMessageDialog(null, "Your credentials were not entered correctly or you may not be authorised to access this system.");
System.exit(0);
}
View Replies
View Related
Feb 6, 2015
I am trying to do a rock, paper, scissors game, but when i choose for example, it shows what i have typed. So how do i hide text form showing in the console?
View Replies
View Related
Feb 9, 2014
I am generating pdf and displaying it in separate window/tab using the approach described in BalusC Code: PDF handling.I need to display blockui ajax loader when i select the commandlink to display pdf.The pdf gets generated but the ajax loader image remains as it is.I need to manually refresh the page to hide it.Is there any way using which it can be hidden as soon as the pdf gets displayed.My code snippet is as below
JSF page
<h:form id="subFrm">
<p:commandLink value="Download PDF" action="#{pdfBean.downloadPDF}"
onclick="blkUi.show()" oncomplete="blkUi.hide()" id="cmdLink"
ajax="false" />
[code]....
View Replies
View Related
Jun 25, 2014
I've a simple status bar in which I've several icons inside a HBox (ui drawn with fxml). These icons can be visibile or hidden due to some configuration properties in my app. I've a bind between some BooleanProperty and image.visibleProperty. The problem, as you can guess, is that when an icon in the middle disappears I've a hole. There is a property as in Android [URL] ...., that hide the node and collapse its space?
View Replies
View Related
Aug 1, 2014
How do i hide a specific column in a JTable object.? Setting setPreferredSize to 0 is not working.
View Replies
View Related
May 15, 2014
I put link using JQuery on Home Page,
<div class="list_block1" >
script type="text/javascript" src="js/jquery.leanModal.min.js"></script>
<link rel="stylesheet" href="http://netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.min.css" />
<link type="text/css" rel="stylesheet" href="css/style.css" />
<link rel="stylesheet" type="text/css" href="css/postoffer.css" media="all"/>
<div class="container">
<a id="modal_trigger" href="#modal" class="btn">Click here to Login or register</a>
<%
[Code] ....
View Replies
View Related
Dec 9, 2014
There are 8 JCheckboxes, which are already added to panel and aligned in group layout. From which, I have selected one JCheckbox. Then the resultant GUI should contain only remaining 7 JCheckboxes and selected one should temporarily removed or hide from GUI . Is it possible? If so, how?
View Replies
View Related
Oct 28, 2014
I am maintaining an existing Java product (which has a HUGE code-base). I discovered that it is setting (and getting) two of its internal passwords as Java system properties, at no less than 4-5 different places (methods). Now, the problem is, the passwords are being stored as plain text in the Java system properties, and so, the same is visible to external entities, as the application is not using any Java Security Manager. For example, if the application (process) is running on port number 1234, we can run the Java command:
jinfo -sysprops 1234
to view both the passwords as values of the corresponding Java system properties. I wish to ask if there is any remedy to this without changing the existing code-base too much? The desired effect would be to "hide" the two Java system properties (denoting the two passwords) from all external entities.
It may be noted that introducing a Java Security Manager into the application may not be a solution, as if we revoke read permissions from the said two Java system properties using the Java Security Manager, the application codes which read those properties would crash. Same is applicable for storing the passwords in encrypted form, as that would crash all codes within the application which are expecting to read the passwords in clear text form.
To give a bit more context, the said two passwords we are storing as Java system properties are actually passwords to access two key-stores, and Tomcat requires that we store the said two passwords in plain-text format. Any workarounds, such that only Tomcat will be able to see the two passwords as-is, while they will be invisible to all other external entities?
Or, is there any way to place the said passwords in other in-memory locations (like static variables) which only Tomcat can (be made to) read instead of placing them as system properties which is exposed to anyone?
View Replies
View Related
Nov 23, 2014
In JButton's click event, I wanto to show a JPanel to print the message "Processing" on the screen. Before JButton's click logic end, hide the JPanel.
Actually, JPanel is not displayed. I do not know why.When msgPanel .setVisible(false); is commented out, JPanel is normally displayed .But do not know how to hide it when JButton's click logic is finished.
Here is the code.
loadBtn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
JPanel msgPanel = new JPanel(rootFrame);
// Show the message JPanel
[Code] .....
View Replies
View Related
May 21, 2014
Given the case I have an object which is assigned only once. What is the difference in doing:
public class MyClass {
private MyObj obj = new MyObj("Hello world");
private MyClass(){}
//...
}
and
public class MyClass {
private MyObj obj;
private MyClass(){
obj = new MyObj("Hello world");
}
//...
}
Is there a difference in performance or usability? (Given also the case there are no static calls expected) ....
View Replies
View Related