 <p>Inheritance is not the answer to everything, and here is is <em>not</em> the answer at all. Inheritance should model "is-a", and by no stretch of the imagination is an <code>Account</code> a <code>UseAccount</code>.</p> <p>Instead, just change the signature of <code>display()</code> to take a <code>JTextArea</code> as an argument; then in the <code>display()</code> code you'll have a <code>JTextArea</code> to work with. When you call <code>display()</code>, pass the <code>JTextArea</code> in.</p> <p>In other words:</p> <pre><code>void display(JTextArea ta) { ta.append(name); ... </code></pre> <p>and then</p> <pre><code>// "frame" is the UseAccount object that contains the JTextArea variable `output` myAccount.display(frame.output); </code></pre> <p>Most of the time, the right question is not "How can X get access to part of Y", but rather "How can Y give access to part of itself to X?"</p> <p>One final note: small effort put into naming variables well really pays off. </p>